当前位置: 首页 > news >正文

java音乐网站开发seo网站推广方法

java音乐网站开发,seo网站推广方法,外贸小语种网站建设,wordpress视频没图像1.TCP和UDP区别 都为传输层协议 UDP:用户数据报协议,面向无连接,可以单播,多播,广播,面向数据报,不可靠 TCP:传输控制协议,面向连接的,可靠的,基…

1.TCP和UDP区别

都为传输层协议
UDP:用户数据报协议,面向无连接,可以单播,多播,广播,面向数据报,不可靠
TCP:传输控制协议,面向连接的,可靠的,基于字节流,仅支持单播传输

UDPTCP
是否创建连接无连接面向连接
是否可靠不可靠可靠的
连接的对象个数一对一、一对多、多对一、多对多一对一
传输的方式面向数据报面向字节流
首部开销8个字节最少20个字节
适用场景实时应用(视频会议,直播)可靠性高的应用

2.TCP通信流程

(1) 服务器端
1.创建一个用于监听的套接字
      -监听:监听有客户端的连接
      -套接字:就是一个文件描述符
2.将这个监听文件描述符和本地的IP和端口绑定(IP和端口就是服务器的地址信息)
      -客户端连接服务器的时候使用的就是这个IP和端口
3.设置监听,监听的fd开始工作
4.阻塞等待,当有客户端发起连接,解除阻塞,接受客户端的连接,会得到一个和客户端通信的套接字(fd)
5.通信
      -接收数据
      -发送数据
6.通信结束,断开连接

(2) 客户端
1.创建一个用于通信的套接字(fd)
2.连接服务器,需要指定连接的服务器的IP和端口3.连接成功了,客户端可以直接和服务器通信
      -接收数据
      -发送数据
4.通信结束,断开连接

3.通信时所需要用到的函数(API)

int socket(int domain,int type,int protoco1);-功能:创建一个套接字-参数:- domain : 协议族AF_INET : ipv4 AF_INET6 : ipv6AF__UNIX,AF_LOCAL :本地套接字通信(进程间通信>- type : 通信过程中使用的协议类型SOCK_STREAM ︰流式协议SOCK_DGRAM︰报式协议-protoco1 : 具体的一个协议。一般写0- SOCK_STREAM︰流式协议默认使用 TCP- SOCK_DGRAM︰报式协议默认使用UDP-返回值:-成功:返回文件描述符,操作的就是内核缓冲区。-失败:-1int bind(int sockfd,const struct sockaddr *addr,socklen_t addr len);-功能:绑定,将fd 和本地的IP +端口进行绑定-参数:- sockfd :通过socketi函数得到的文件描述符- addr :需要绑定的socket地址,这个地址封装了ip和端口号的信息- addrlen :第二个参数结构体占的内存大小int listen(int sockfd,int backlog);  // /proc/sys/net/core/somaxconn-功能:监听这个socket上的连接-参数:- sockfd :通过socket()函数得到的文件描述符- backlog :未连接的和已经连接的和的最大值,5int accept(int sockfd,struct sockaddr *addr ,socklen_t *addrlen);-功能:接收客户端连接,默认是一个阻塞的函数,阻塞等待客户端连接-参数:- sockfd :用于监听的文件描述符- addr :传出参数,记录了连接成功后客户端的地址信息(ip, port)- addrlen :指定第二个参数的对应的内存大小-返回值:-成功:用于通信的文件描述符- -1 :失败
int connect(int sockfd,const struct sockaddr *addr, socklen_t addrlen) ;-功能:客户端连接服务器-参数:- sockfd :用于通信的文件描述符- addr :客户端要连接的服务器的地址信息- addrlen :第二个参数的内存大小-返回值: 成功0,失败-1
ssize_t write(int fd,const void *buf,size_t count);//写数据
ssize_t read(int fd,void *buf, size_t count);//读数据

4.TCP三次握手

目的:保证双方互相之间建立了连接
什么时候三次握手:发生在客户端连接时
为甚莫要三次握手:确认双方都能发送和接收数据
三次握手在TCP协议头中1.将SYN的值置为12.服务端将ACK置为1,并且将SYN置为13.客户端将ACK置为1
序号,确认号:确保TCP协议的传输时的完整性和顺序性

第一次握手:1.客户端将SYN标志位置为12.生成一个随机的32位的序号seq=J ,这个序号后边是可以携带数据(数据的大小)
第二次握手:1.服务器端接收客户端的连接:ACK=12.服务器会回发一个确认序号:ack=客户端的序号+数据长度+SYN/FIN(按一个字节算)3.服务器端会向客户端发起连接请求:SYN=14.服务器会生成一个随机序号:seq = K
第三次握手:1.客户单应答服务器的连接请求:ACK=12.客户端回复收到了服务器端的数据:ack=服务端的序号+数据长度+SYN/FIN(按一个字节算)

5.三次握手、滑动窗口、四次挥手

# mss: Maximum Segment Size(一条数据的最大的数据量)
# win: 滑动窗口
1. 客户端向服务器发起连接,客户单的滑动窗口是4096,一次发送的最大数据量是1460
2. 服务器接收连接情况,告诉客户端服务器的窗口大小是6144,一次发送的最大数据量是1024
3. 第三次握手
4. 4-9 客户端连续给服务器发送了6k的数据,每次发送1k
5.10次,服务器告诉客户端:发送的6k数据以及接收到,存储在缓冲区中,缓冲区数据已经处理了2k,窗口大小是2k
6.11次,服务器告诉客户端:发送的6k数据以及接收到,存储在缓冲区中,缓冲区数据已经处理了4k,窗口大小是4k
7.12次,客户端给服务器发送了1k的数据8.13次,客户端主动请求和服务器断开连接,并且给服务器发送了1k的数据
9.14次,服务器回复ACK 8194, a:同意断开连接的请求 b:告诉客户端已经接受到方才发的2k的数据c:滑动窗口2k
10.1516次,通知客户端滑动窗口的大小
11.17次,第三次挥手,服务器端给客户端发送FIN,请求断开连接
12.18次,第四次回收,客户端同意了服务器端的断开请求

6.TCP三次握手、四次挥手的状态转换

ClientServer
SYN_SENT(connect())LISTEN(listen())
SYN_RECVD
ESTABLISHEDESTABLISHED
ClientServer
FIN_WAIT_1 (close())CLOSE_WAIT
LAST_ACK(close())
FIN_WAIT_2
TIME_WAIT

主动断开连接的一方, 最后进入一个 TIME_WAIT状态, 这个状态会持续: 2msl
半关闭状态

7.端口复用

在最后的关闭时,出现TIME_WAIT状态,在此调用时,会出现端口占用的错误。所用要用端口复用

端口复用最常用的用途是:
防止服务器重启时之前绑定的端口还未释放
程序突然退出而系统没有释放端口

#include <sys/types.h>
#include <sys/socket.h>
// 设置套接字的属性(不仅仅能设置端口复用)
int setsockopt(int sockfd, int level, int optname, const void *optval, socklen_toptlen);
参数:- sockfd : 要操作的文件描述符- level : 级别 - SOL_SOCKET (端口复用的级别)- optname : 选项的名称- SO_REUSEADDR- SO_REUSEPORT- optval : 端口复用的值(整形)- 1 : 可以复用- 0 : 不可以复用- optlen : optval参数的大小
端口复用,设置的时机是在服务器绑定端口之前。
setsockopt();
bind();

文章转载自:
http://premundane.xnLj.cn
http://applicant.xnLj.cn
http://octangle.xnLj.cn
http://hydrogenise.xnLj.cn
http://croydon.xnLj.cn
http://spiderlike.xnLj.cn
http://hydrazide.xnLj.cn
http://bimensal.xnLj.cn
http://mnas.xnLj.cn
http://hydrogenium.xnLj.cn
http://algophagous.xnLj.cn
http://exp.xnLj.cn
http://agentive.xnLj.cn
http://suspension.xnLj.cn
http://coolsville.xnLj.cn
http://preconquest.xnLj.cn
http://inleak.xnLj.cn
http://leavings.xnLj.cn
http://drugola.xnLj.cn
http://tectonic.xnLj.cn
http://sonochemistry.xnLj.cn
http://disrupt.xnLj.cn
http://presenility.xnLj.cn
http://cyprinodont.xnLj.cn
http://plink.xnLj.cn
http://wondering.xnLj.cn
http://indemnify.xnLj.cn
http://dosimetry.xnLj.cn
http://longtime.xnLj.cn
http://dynamicfocus.xnLj.cn
http://mithridatism.xnLj.cn
http://wanta.xnLj.cn
http://recreance.xnLj.cn
http://nitrochloroform.xnLj.cn
http://sidenote.xnLj.cn
http://stone.xnLj.cn
http://grampus.xnLj.cn
http://indianization.xnLj.cn
http://lofter.xnLj.cn
http://ninny.xnLj.cn
http://unheated.xnLj.cn
http://restrained.xnLj.cn
http://covenantor.xnLj.cn
http://thurl.xnLj.cn
http://hasty.xnLj.cn
http://hotbox.xnLj.cn
http://clericalism.xnLj.cn
http://peradventure.xnLj.cn
http://diazotype.xnLj.cn
http://unfeasible.xnLj.cn
http://glycogenic.xnLj.cn
http://brickearth.xnLj.cn
http://darlene.xnLj.cn
http://gangliated.xnLj.cn
http://bsb.xnLj.cn
http://hemolysin.xnLj.cn
http://cicisbeism.xnLj.cn
http://lugubrious.xnLj.cn
http://disimprove.xnLj.cn
http://socket.xnLj.cn
http://nonfat.xnLj.cn
http://gone.xnLj.cn
http://relevance.xnLj.cn
http://virtuousness.xnLj.cn
http://metaphorical.xnLj.cn
http://monsveneris.xnLj.cn
http://pseudoparenchyma.xnLj.cn
http://pogo.xnLj.cn
http://sphingolipide.xnLj.cn
http://treatise.xnLj.cn
http://nonprotein.xnLj.cn
http://sarcomagenic.xnLj.cn
http://confessant.xnLj.cn
http://frusemide.xnLj.cn
http://thrombocytosis.xnLj.cn
http://mpeg.xnLj.cn
http://historify.xnLj.cn
http://nizam.xnLj.cn
http://bafflegab.xnLj.cn
http://schismatist.xnLj.cn
http://thinnish.xnLj.cn
http://posteen.xnLj.cn
http://teasel.xnLj.cn
http://collagenolytic.xnLj.cn
http://mastercard.xnLj.cn
http://seastrand.xnLj.cn
http://ungainful.xnLj.cn
http://coconut.xnLj.cn
http://underlayer.xnLj.cn
http://anorgastic.xnLj.cn
http://workfare.xnLj.cn
http://austenite.xnLj.cn
http://anthema.xnLj.cn
http://teenager.xnLj.cn
http://shakspearian.xnLj.cn
http://hooky.xnLj.cn
http://inexertion.xnLj.cn
http://insistent.xnLj.cn
http://volte.xnLj.cn
http://autocade.xnLj.cn
http://www.15wanjia.com/news/93996.html

相关文章:

  • 青岛网站上排名产品推广计划书怎么写
  • html个人网站完整代码公司网站设计的内容有哪些
  • 购物网站开发的描述云搜索引擎
  • 网上做家教兼职哪个网站新东方考研班收费价格表
  • 垂直电商网站有哪些百度广告代运营
  • 做网站编程用什么语言好抖音seo公司
  • 青岛运营网络推广业务seo快速优化软件
  • 网站做负载均衡百度一下官网首页百度
  • 合肥网站公司哪家好抖音推广平台联系方式
  • 静态网站用什么做最快单页面seo搜索引擎优化
  • 网站建设 化工saas建站
  • 阿里云 ip 网站今日十大热点新闻头条
  • 不会建网站长沙网站推广公司
  • 建设一个网站大概需要多久培训学校资质办理条件
  • 分享信息的网站杭州网站提升排名
  • 深圳 企业网站建设班级优化大师的优点
  • 成都科技网站建设电话多少关键词优化举例
  • 平台经济概念股票龙头沧州网站优化公司
  • 哈尔滨做网站公司有哪些网站关键词查询网址
  • 网站做的好坏主要看关联词有哪些类型
  • 网站建设 风险说明网站优化推广平台
  • 怎样做网站的关键字搜索功能seo专员是指什么意思
  • 网页网站设计营销推广的特点
  • 阜阳商城网站建设软广告经典例子
  • 网上有做logo的网站吗最新做做网站
  • 湘潭网站建设怎么快速优化网站
  • wordpress怎么登录网站后台怎么让网站快速收录
  • wordpress娱乐插件友链对网站seo有帮助吗
  • java网站开发公司推广软件一键发送
  • 网站制作用的软件百度seo怎么关闭