《图解TCP/IP》第六章

6.1   TCP与UDP的区分:

TCP用于传输层有必要实现可靠传输的情况,由于有顺序控制,重发控制还有流量控制,拥塞控制,提高网络利用率等功能,可靠

UDP主要用于那些对高速传输和实时性有较高要求的通信或广播通信,比如打电话保持流畅度,不需要重发,不可靠

6.2   端口号用来识别同一台计算机中进行通信的不同应用程序,也被称为程序地址

通过源IP地址、目标IP地址、协议号、源端口号、目标端口号来分辨不同通信

端口号确定方法:

(1)标准既定的端口号

FTP服务器:21

SSH服务器:22

SMTP:25

HTTP服务器:80

FTP客户端:2000

HTTP客户端:2001

知名端口一般在0~1023

(2)时序分配法,由操作系统自动分配,在49152~65535

端口号由其使用的传输层协议决定,不同的传输协议可以使用相同的端口号

6.3   UDP(User Datagram Protocol)可随时发送数据,处理简单又高效,常用于:

(1)包总量较少的通信(DNS,SNMP等)

(2)视频,高频等多媒体通信(即时通信)

(3)限定于LAN等特定网络中的应用通信

(4)广播通信(广播,多播)

6.4   TCP通过检验和,序列号,确认应答,重发控制,连接管理,以及窗口控制等机制实现可靠性传输

例:主机A发送给主机B消息,主机B收到后会返回一个确认应答ACK(Positive Acknowledgement),没收到则返回一个NACK(Negative Acknowledgement),一段时间没收到回复则重新发送,重发时间至少为1秒,一般为6秒左右,重发二次则以2倍时间重发,直到一定次数,断开连接

如果因为一些原因,主机B收到了数据,但是没有返回ACk,主机A重新发送重复数据,主机B会根据数据的序列号来判断是否接收新数据

TCP通过首部发送SYN包和FIN包来建立和断开连接

SYN(请求建立连接)——》ACK(针对SYN的确认应答)——》SYN(请求建立连接)——》ACK(针对FIN的确认应答)——》FIN(请求切断连接)——ACK(针对FIN的确认应答)——》FIN(请求切断连接)——》ACK(针对FIN的确认应答)

分别是A-》B-》A-》B-》B-》A-》A-》B

TCP以段为单位发送数据,在三次握手过程中,在TCP首部中写入MSS(Maximum Segment Size)最大消息长度,选择小的使用

TCP利用窗口控制提高速度,同时发送多个数据段

流控制:接收端告诉发送端能接收的数据的大小,这大小就是窗口大小,接收端的缓冲区一旦面临数据溢出时,窗口大小的值会被设为更小的值,从而控制数据转发量

拥塞控制就是先发一个试试水,能行下次发两个,依次类推直到超时重发时把拥塞窗口设置为一半大小

TCP的确认应答和返回数据可以通过一个包发送,这种方式就是捎带应答

UDP首部包括:源端口号,目标端口号,包长度,校验和,数据部分

TCP首部包括:源端口号,目标端口号,序列号,确认应答号,数据偏移,保留,控制位,窗口大小,校验和,紧急指针,选项,填充,数据部分

窗口大小与吞吐量:窗口大小为W,往返时间是RTT

最大吞吐量为:W/RTT,例:Tmax = 65535(字节)/0.1秒 =  65538*8(比特)/0.1秒 = 5.2Mbps

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值