计算机网络——TCP/IP协议概述

TCP/IP协议概述

1. 应用层(Application Layer)

1.1 功能

应用层是用户直接接触的层次,负责为用户提供具体的应用功能,比如浏览网页(HTTP)、发送邮件(SMTP)、文件传输(FTP)等。应用层的数据称为消息(Message)报文(Message)

1.2 用户态和内核态

应用层工作在操作系统的用户态,而传输层及以下工作在内核态。应用层通过系统调用(如send()recv())与内核态的网络协议栈交互。

2. 传输层(Transport Layer)

2.1 功能

传输层负责为应用层提供端到端的通信支持,主要协议是TCPUDP。传输层的数据称为段(Segment)(TCP)数据报(Datagram)(UDP)

2.2 TCP和UDP的区别

  • TCP(传输控制协议):提供可靠传输,支持流量控制、超时重传、拥塞控制等特性。适用于需要可靠传输的场景,如HTTP、FTP、电子邮件等。
  • UDP(用户数据报协议):提供不可靠传输,不保证数据包是否到达对方。适用于实时性要求高的场景,如视频流、在线游戏等。

2.3 端口号

传输层通过端口号区分不同的应用。例如,Web服务器通常使用80端口,SSH使用22端口。客户端操作系统会为每个应用分配临时的端口号。

3. 网络层(Internet Layer)

3.1 功能

网络层负责将数据包从源设备传输到目标设备,主要协议是IP协议。网络层的数据称为包(Packet)

3.2 IP地址

每个设备都有一个唯一的IP地址,用于标识设备。IPv4地址由32位组成,通常表示为四段数字(如192.168.1.1)。

3.3 子网掩码

子网掩码用于划分IP地址的网络号主机号。例如,192.168.1.1/24表示前24位是网络号,后8位是主机号。通过按位与运算,可以计算出网络地址和主机地址。

3.4 路由

网络层通过路由算法决定数据包的传输路径。路由器根据目标IP地址的子网,将数据包转发到下一个节点。

3.5 例子

当你的电脑访问一个网站时,网络层会将目标IP地址(如93.184.216.34)添加到IP包头中,并通过路由算法找到传输路径。

4. 网络接口层(Link Layer)

4.1 功能

网络接口层负责在物理网络上发送原始数据包,主要协议是以太网(Ethernet)和Wi-Fi。网络接口层的数据称为帧(Frame)

4.2 MAC地址

每个网络设备都有一个唯一的MAC地址,用于标识设备。MAC地址由48位组成,通常表示为六段十六进制数(如00:1A:2B:3C:4D:5E)。

4.3 ARP协议

ARP(地址解析协议)用于将IP地址解析为MAC地址。例如,当你的电脑需要发送数据包到192.168.1.1时,它会通过ARP协议获取目标设备的MAC地址。

4.4 例子

当你的电脑发送数据包时,网络接口层会将目标MAC地址添加到以太网帧中,并通过网卡发送到物理网络。

5. 数据包在各层的封装

5.1 发送数据包

  • 应用层:生成HTTP请求(消息)。
  • 传输层:添加TCP头,封装为TCP段。
  • 网络层:添加IP头,封装为IP包。
  • 网络接口层:添加以太网头,封装为以太网帧。

5.2 接收数据包

  • 网络接口层:剥离以太网头,得到IP包。
  • 网络层:剥离IP头,得到TCP段。
  • 传输层:剥离TCP头,得到HTTP请求。
  • 应用层:处理HTTP请求。

请添加图片描述

6. 参考资料

参考资料

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值