计算机网络知识点总结(五)传输层

《传输层》

(1)传输层的功能:进程之间的逻辑通信;复用和分用;差错检测;面向连接的TCP和无连接的UDP

【注】1.传输层提供应用进程之间的逻辑通信,即端到端的通信网络层提供主机之间的逻辑通信。

          2.复用是指发送方不同的应用进程都可以使用同一个传输层协议传送数据;分用是指接收方的传输层在剥去报文首部后能够把这些数据正确地交付到目的应用进程

          3.传输层还要对收到的报文进行差错校验(首部和校验部分);网络层只检查IP数据报的首部,不检验数据部分是否出错。

(2)传输层的寻址和端口
端口在传输层的作用类似于IP在网络层的作用或MAC在数据链路层的作用,而IP和MAC标识的主机,端口标识的是应用进程

端口号一共16bit,可表示65535个不同端口号。

 

常见端口号:

FTP:21

TELNET:23

SMTP:25

DNS:53

TFTP:69

HTTP:80

SNMP:161

【注】在网络中通过IP来标识和区别不同的主机,通过端口号来标识和区别一台主机中的不同应用进程。

套接字=(主机IP+端口号)

 

(3)UDP协议:

 1)特点:无连接,首部开销较小,最大努力交付,应用层要保证可靠性

2)首部:8B,分为源端口、目的端口、长度、校验和

3)校验:采用首部,伪首部,数据进行二进制反码运算求和再取反

 

【注】IP数据报和UDP数据报的区别:IP数据报在网络层中要经过路由的存储转发,而UDP数据报是在传输层的端到端的逻辑通信中传输,而封装成IP数据报在网络层传输时,UDP数据报的信息对路由不可见。

 TCP和网络层的虚电路的区别:TCP报段是在传输层抽象的逻辑信道中传输,对路由不可见;虚电路所经过的交换结点都必须保存虚电路的状态信息。在网络层若采用虚电路方式,则无法提供无连接服务,而传输层采用TCP协议不影响网络层提供无连

接服务

 

 

(4)TCP协议:

1)特点:有连接,一对一(点对点),提供可靠交付,全双工通信,面向字节流

2)首部:20B,源端口,目的端口,序号,确认号等信息

3)连接管理:三次握手建立,四次握手释放

4)可靠传输机制:

 1.序号:用来保证数据能有序提交给应用层 

 2.确认:确认号为期待收到的下一个报文段第一个字节的序号

3.重传:超时:计时器到期还没收到确认则重传对应报文 冗余确认:当收到失序报文时向发送端发送冗余ACK

 

5)流量控制:在确认保温中设置接受窗口rwnd(接受窗口)的值来限制发送速率

6)拥塞控制:

 1.原理:根据自己估算的网络拥塞程序设置cwnd(拥塞窗口)的值来限制发送速率

2.方法:

 慢开始(当cwnd<ssthersh时,每收到一个报文段的确认cwnd加1)、

 拥塞避免(当cwnd>ssthersh时,每经过一个往返段延时cwnd加1)、

快重传(当收到连续的三个重复的ACK,直接重传对方期待的报文)、

 快恢复(当收到连续的三个冗余ACK,令ssthresh=cwnd=cwnd/2)

3.拥塞控制:ssthresh设置为元cwnd的一半,cwnd设置为1。

 

【注】三次握手的建立过程

三次握手:
第一次握手:客户端发送syn包(syn=x)到服务器,并进入SYN_SEND状态,等待服务器确认;

第二次握手:服务器收到syn包,必须确认客户的SYN(ack=x+1),同时自己也发送一个SYN包(syn=y),即SYN+ACK包,此时服务器进入SYN_RECV状态;

第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=y+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。

握手过程中传送的包里不包含数据,三次握手完毕后,客户端与服务器才正式开始传送数据。理想状态下,TCP连接一旦建立,在通信双方中的任何一方主动关闭连接之前,TCP 连接都将被一直保持下去。

 

【注】四次握手的建立过程

四次挥手:
与建立连接的“三次握手”类似,断开一个TCP连接则需要“四次握手”。
第一次挥手:主动关闭方发送一个FIN,用来关闭主动方到被动关闭方的数据传送,也就是主动关闭方告诉被动关闭方:我已经不 会再给你发数据了(当然,在fin包之前发送出去的数据,如果没有收到对应的ack确认报文,主动关闭方依然会重发这些数据),但是,此时主动关闭方还可 以接受数据。

第二次挥手:被动关闭方收到FIN包后,发送一个ACK给对方,确认序号为收到序号+1(与SYN相同,一个FIN占用一个序号)。

第三次挥手:被动关闭方发送一个FIN,用来关闭被动关闭方到主动关闭方的数据传送,也就是告诉主动关闭方,我的数据也发送完了,不会再给你发数据了。

第四次挥手:主动关闭方收到FIN后,发送一个ACK给被动关闭方,确认序号为收到序号+1,至此,完成四次挥手。

 

【注】在浏览器中输入www.baidu.com后的执行过程

答:1、客户端浏览器通过DNS解析到www.baidu.com 的IP地址220.181.27.48,通过这个IP地址找到客户端到服务器的路径。客户端浏览器发起一个HTTP会话到220.181.27.48,然后通过TCP进行封装数据包,输入到网络层。
2、在客户端的传输层,把HTTP会话请求分成报文段,添加源和目的端口,如服务器使用80端口监听客户端的请求,客户端由系统随机选择一个端口如5000,与服务器进行交换,服务器把相应的请求返回给客户端的5000端口。然后使用IP层的IP地址查找目的端。
3、客户端的网络层不用关心应用层或者传输层的东西,主要做的是通过查找路由表确定如何到达服务器,期间可能经过多个路由器,这些都是由路由器来完成的工作,我不作过多的描述,无非就是通过查找路由表决定通过那个路径到达服务器。
4、客户端的链路层,包通过链路层发送到路由器,通过邻居协议查找给定IP地址的MAC地址,然后发送ARP请求查找目的地址,如果得到回应后就可以使用ARP的请求应答交换的IP数据包现在就可以传输了,然后发送IP数据包到达服务器的地址。

 

【注】TCP与UDP的区别

 

答:TCP提供面向连接的、可靠的数据流传输,而UDP提供的是非面向连接的、不可靠的数据流传输。
TCP传输单位称为TCP报文段,UDP传输单位称为用户数据报。
TCP注重数据安全性,UDP数据传输快,因为不需要连接等待,少了许多操作,但是其安全性却一般。
TCP对应的协议和UDP对应的协议
TCP对应的协议:
(1) FTP:定义了文件传输协议,使用21端口。
(2) Telnet:一种用于远程登陆的端口,使用23端口,用户可以以自己的身份远程连接到计算机上,可提供基于DOS模式下的通信服务。
(3) SMTP:邮件传送协议,用于发送邮件。服务器开放的是25号端口。
(4) POP3:它是和SMTP对应,POP3用于接收邮件。POP3协议所用的是110端口。
(5)HTTP:是从Web服务器传输超文本到本地浏览器的传送协议。
UDP对应的协议:
(1) DNS:用于域名解析服务,将域名地址转换为IP地址。DNS用的是53号端口。
(2) SNMP:简单网络管理协议,使用161号端口,是用来管理网络设备的。由于网络设备很多,无连接的服务就体现出其优势。
(3) TFTP(Trival File Transfer Protocal),简单文件传输协议,该协议在熟知端口69上使用UDP服务。

 

 

 

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wimb

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值