四、传输层

传输层主要提供端到端的通信服务,分为TCP和UDP两种协议。TCP是面向连接、可靠的传输机制,拥有确认应答、序列号、超时重传等机制保证数据的正确传输,适用于HTTP、HTTPS等需要高可靠性的场景。UDP则是无连接、不可靠的,适合于DNS、实时游戏等对速度要求高、能容忍丢包的场景。TCP的连接建立通过三次握手,关闭则需要四次挥手。
摘要由CSDN通过智能技术生成

传输层

传输层主要是为运行在不同主机上的应用进程提供直接的通信服务(端到端的通信)。

通信单元为:报文段

端口为应用层的各个应用进程的数据通过这个“门”向下传递给传输层。

  1. 服务端使用的端口号:(1)熟知端口号:0~1023。分配给TCP/IP最重要的一些应用进程。
    (2)登记端口号:1024~49151。给没有熟知端口号的应用程序使用
应用进程 FTP TELNET SMTP DNS TFTP HTTP SNMP
端口号 21 23 25 53 69 80 161

2.客户端使用的端口号:49152~65535。也叫短暂端口号。是在客户端进程运行成功后动态选择的。

端口号具有本地意义,即端口号只是标志本机计算机应用层的各个进程。在互联网中,不同主机的相同端口号没有联系。

套接字(socket):在网络中通过IP来唯一标识一个主机。通过端口号来标识一台主机中的不同进程。所以网络连接出现socket套接字来标识一个主机上的某进程。

套接字(socket)=(Host IP,port)


UDP协议

在这里插入图片描述16位UDP长度:UDP首部+UDP数据


特点1:无连接服务

无连接:知道对端的IP和端口号就直接进行传输,不需要建立连接。

全双工:UDP的socket既能读,也能写

无连接服务和面向连接服务

面向连接和无连接的区别在于通信双方通信之间,是否需要先建立连接。

面向连接:在通信过程中,整个连接的过程一直被监控和管理,通信结束之后,释放这个连接。

无连接服务:两个实体之间需要需要通信时,直接将信息发到“网络”上,让该信息在网上尽力传输到目的方。

UDP协议是无连接的不可靠传输机制,它在IP之上仅仅提供了多路复用、数据差错检查服务

由于UDP服务不需要建立连接,执行速度快,实时性号,只用于小文件的传输协议。(DNS、SNMP、RTP、TFTP)


特点2:不可靠

没有确认机制,没有重传机制;如果因为网络故障该段无法发送到对方,UDP协议也不会给应用层发挥任何错误信息。


特点3:面向数据报

不能够灵活的控制读写数据的次数和数量。

应用层交给UDP多长的报文,UDP原样发送,既不会拆分,也不会合并,交付时一次交付一整个报文。


特点4、5:无拥塞控制、支持多种通信

网络的拥塞不会使得源主机的发送速率降低,允许丢失一些数据。

支持一对一、一对多、多对一和多对多的交互通信。


UDP协议的一些问题

1、UDP和TCP的简单介绍
UDP是一个简单的面向数据报的运输层协议:进程的每个输出操作都正好产生一个UDP数据报,并组装成一份待发送的IP数据报。
TCP是面向流字符,应用程序产生的全体数据与真正发送的单个IP数据报可能没什么联系。

2、为什么要加有伪首部?
目的是让UDP两次检查数据是否到达正确的目的地。
IP接收正确的目的地址,传送到正确的上层程序。
所有伪首部包括:源IP地址、目的IP地址、0、协议号、UDP长度


TCP协议

在这里插入图片描述

  • 源端口号
  • 目的端口号
  • 序列号(seq)
  • 确认号(ack):期望收到的数据的开始序列号。也即已经收到的数据的字节长度+1。
    • 如果含有同步化标识(SYN),则此为最初的序列号;第一个数据比特的序列号为本序列号+1
    • 如果没有SYN,则此为第一个数据比特的序列码。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值