运输层

网络层是为主机之间提供逻辑通信;运输层应用进程之间提供端到端的逻辑通信。

      端口的基本概念就是:应用层的源进程将报文发送给运输层的某个端口,而应用层的目的进程从端口接收报文。端口用一个16位端口号进行标志。但端口号只具有本地意义。在逻辑上,三元组(IP地址、运输层协议、端口号)唯一标识了因特网中的一个通信进程。端口分类:熟知端口(0~1023,FTP(21), TELNET(23), SMTP(25), DNS(53), HTTP(80)),登记端口,动态端口(留给客户进程选择作为临时端口)

无连接的UDP:在IP的数据服务之上增加了端口差错检测的功能。优点:无连接的,即发送数据前不需要建立连接;尽最大努力交付,即不保证可靠交付,同时也不适用流量控制和拥塞控制;面向报文,即对应用程序交下来的报文不再划分为若干个分组来发送,也不把收到的若干个报文合并后再交付给应用程序;支持一对一、一对多、多对一和多对多的交互通信;只有8个字节的首部开销。差错检测由首部的检验和来实现,将首部和数据部分一起检验。

面向连接的TCP:优点:面向连接;每一条TCP连接智能有俩端点,即每一条TCP连接只能是点对点的(一对一);可靠交付;双全工通信;面向字节流,即虽然应用进程和TCP的交互是一次一个数据块(大小不等),但TCP把应用程序交下来的数据看成是一连串的无结构的字节流。TCP连接的组成主要包括:通信俩端主机上的缓存、状态变量,在这俩台主机间的路由器没有为该连接分配任何缓存和变量。进行检验和计算时,TCP报文也要加上伪首部,将协议号改为6,UCP长度改为TCP长度即可。

TCP首部中的确认号是期望收到对方的下一个报文段的第一个数据字节的序号。TCP提供的是双向通信,当一端发送数据时同时对接收到的对端数据进行确认。TCP采用的是累积确认。即,若收到1~100,301~400,确认号为101。

TCP的可靠数据传输:1,数据编号与确认;2,以字节为单位的滑动窗口;3,超时重传时间的选择;4,快速重传。快速重传的工作原理:收到3次相同之前ACK的确认,作为丢包的依据,此时重传。举例:发送M1~M5共5个报文段。接收方每收到一个报文立即发出确认。

流量控制:TCP采用接收方控制发送方发送窗口大小的方法来实现在TCP连接上的流量控制。将未按序到达的放在接收窗口中。

举例:

拥塞控制:防止过多的数据注入到网络中,这样可以使网络中的路由器或链路不致过载。一个简单的网络拥塞例子:

此时,由于R1和R2之间最高速率为100Mbit/s,所以A、B分别以50Mbit/s发送数据,但由于R2和D之间最高速率为10Mbit/s,因此会损失40Mbit/s的带宽。此时整个系统的带宽为50+10(Mbit/s)。

通过拥塞控制,使A以90Mbit/s的速率,B以10Mbit/s的速率发送数据,如此,整个系统的带宽为90+10(Mbit/s)。

TCP的拥塞控制:使用以下算法慢开始、拥塞避免、快速重传和快速恢复。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值