78.计算机网络-传输层

2022-03-25  本文已影响0人  wo不是黄蓉

使用IP协议就能把源主机A发送出的分组按照首部中的目的地址,交送到目的主机B,为什么还需要运输层呢?

IP数据报的首部明确地标志了这两台主机的IP地址,但两台主机之间的通信的实体是主机中的进程,IP协议可以把分组送到目的主机但是不知道要交付到哪个应用上去。分组就停留在主机的网络层而没有交付主机中的进程。

为什么要制定端口?

计算机操作系统种类多,不同操作系统使用不同格式的进程标识符,为了是他们能够互相通信,就必须用统一的方法对TCP/IP体系的应用进程进行标志。

说白了就是为了确定一种统一的协议来方便不同操作系统进程之间的通信。

常用的应用层协议有哪些?分别对应的是什么传输层协议?

应用层协议 传输层协议 应用 端口号
HTTP协议 TCP 万维网 80
FTP简单邮件传输协议 TCP 文件传送 21
SMTP简单邮件传输协议 TCP 25
Telnet远程终端协议 TCP 23
SNMP简单网络管理协议 TCP 161
DNS域名解析系统 UDP 53
TFTP UDP 69
IGMP网际管理协议 UDP 多播、流式多媒体通信
专用协议 UDP Ip电话

传输层协议:

TCP和UDP属于传输层协议。

特点:

2022.3.26更新

TCP特点

TCP为什么是可靠的?

网络传输是尽最大努力交付,TCP采取了一些措施才能够实现通信可靠。例如:超时重传

1.停止等待协议:

停止等待协议就是每发送完一个分组就停止发送,等待对方的确认。在收到确认后再发送下一个分组。

优:简单,容易实现

缺:信道利用率低

优化:流水线传输

停止等待处理的几种情况:

a.A传给B MB接收M时出错,B直接丢弃M,当A发送出去有一段时间没有接收到B的确认消息之后,就会进行超时重传。

b.A传给 B M时出错,B什么都不知道,也不会有任何动作。

有了停止等待协议,A超过一段时间没有收到确认就认为分组丢失了,会再次重传。

A传给BB再会送确认消息时丢失了MA在设定的超时重传内没有收到消息。A在超时计时器到期后要重传M

a.B此时如果收到了重传的M丢弃这个重复的分组,不向上交付。

b.向A发送确认消息,防止再重传

c.A传给B时超时,A重传,B丢弃重复的M,重传确认M,此时A再收到B延迟的消息时丢弃。

2.流水线传输

基于流水线传输的有两种协议:连续ARQ和滑动窗口协议

ARQ:

发送方每收到一个方确认就向右移动1个分组,接收方采用累计确认的方式,对按需到达的最后一个分组发送确认表示已收到所有分组.

优点:容易实现,丢失之后不必重传,因为在接收方如果有丢失的,接收方只对已经接收到的分组发送确认消息,发送发无法知道丢失的几个包的消息,会自动进行重传.

缺点:发送方无法知道接收方已经正确收到了全部分组的消息.

滑动窗口协议:

发送方每发送一个分组,收到确认消息后就把窗口向前推进一位.

TCP可靠传输的实现:

报文每重传一次,就把超时重传时间增大一些,当不再发生报文重传时才根据超时重传时间公式计算.

会出现首部超出限制问题.

三次握手:

四次挥手

上一篇 下一篇

猜你喜欢

热点阅读