java中的接口是类吗
278
2022-10-22
计算机网络学习(5)运输层
运输层:为运行在不同主机上的应用进程提供直接的通信服务
计算机网络中进行通信的真正实体是位于通信两端主机中的进程
在逻辑上应用进程间在运输层上直接通信
运输层端口号
运行在计算机上的进程使用进程标识符PID来标志,不同的操作系统使用不同的继承标识符。
使用统一的方法对TCP/IP体系的应用进程进行标识。
端口号使用16比特表示,取值范围为0~65535
熟知端口号:0~1023,TCP/IP协议中最重要的一些应用协议,如:FTP使用21/20,HTTP使用80,DNS使用53
登记端口号:1024~49151,为没有熟知端口号的应用程序使用。使用这类端口号必须在IANA按照规定的手续登记,以防止重复,如:微软远程桌面使用的端口是3389
短暂端口号:49152~65535,留给客户进程训责暂时使用。当服务器进程收到客户进程的报文时,就知道了客户进程所使用的动态端口号。通信结束后,这个端口号可供其他客户进程以后使用
端口号只具有本地意义,即端口号只是为了标识本计算机应用层中的各进程,在因特网中,不同计算机中的相同端口号时没有联系的
面向连接的TCP(传输控制协议)(适用于面向连接的可靠传输服务,如文件传输)
仅支持单播
TCP面向字节流,对将应用报文看作无意义的字节流进行处理
向上层提供面向连接的可靠传输服务
首部最小20字节,最大60字节
流量控制(让发送方的发送速率不要太快,使得接收方来得及接收)
利用滑动窗口机制可以实现TCP连接上的流量控制
TCP接收方利用自己的接收窗口大小限制发送方发送窗口的大小
TCP发送方收到接收方的零窗口通知后,应启动持续计时器。持续计时器超时后,向接收方发送零窗口探测报文
拥塞控制
拥塞:对网络中某以资源的需求超过了该资源所能提供的可用部分,网络性能就回变差
发送方维护状态变量拥塞窗口(cwnd),其值取决于动态变化的网络拥塞程度。
cwnd的维护原则是:网络没有出现拥塞,则拥塞窗口增大,网络出现拥塞,则拥塞窗口减小
判断网络拥塞的依据是发生超时重传
慢开始:
拥塞避免:
快重传:
快恢复:
超时重传时间(RTO)的选择:应设置为略大于报文往返时间RTT
可靠传输的实现
TCP运输链接管理
TCP的连接建立(三次握手):
解决问题:1、使双方能够确知对方存在
2、使双方能够协商一些参数
3、使双方能够对运输实体资源进行分配
过程:1、TCP客户发送TCP连接请求(SYN=1 seq=x)
2、TCP服务器发送针对TCP连接请求的确认(SYN=1 ACK=1 seq=y ack=x+1)
3、发送针对TCP连接请求确认的确认(ACK=1 seq=x+1 ack=y+1)
TCP的连接释放(四次挥手)
1、客户发送连接释放(FIN=1 ACK=1 seq=u ack=y),进入终止等待状态
2、服务器发送普通确认(ACK=1 seq=v ack=u+1),服务器进入关闭等待状态,客户进入终止等待2状态
3、服务器发送剩余数据后,服务器发送连接释放(FIN=1 ACK=1 seq=w ack=u+1),等待最后确认
4、客户发送普通确认(ACK=1 seq=u+1 ack=w+1),服务器收到后关闭进程,客户在经过2倍最长报文寿命MSL的时间后关闭进程
TCP报文段的首部格式
固定首部(20字节):源端口16比特,目的端口16比特,序号32比特,确认号32比特,数据偏移4比特,保留6比特,URG、ACK、PSH、RST、SYN、FIN分别占一个比特,窗口16比特,校验和16比特,紧急指针16比特
扩展首部:选项(最大报文长度MSS、窗口扩大选项、时间戳选项)、填充
无连接的UDP(用户数据报协议)(适用于实时应用,如视频会议、IP电话等)
UDP支持单播、多播以及广播
UDP面向应用报文,应用报文添加一个UDP首部后直接发送
向上提供无连接不可靠传输服务,对产生误码和丢失的数据仅丢弃
首部仅8字节
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~