【嵌入式】Linux C编程——网络编程(1)

TCP/IP不仅包括传输控制协议TCP和网际协议IP,而是一组协议簇,涉及IP地址、单播、广播和多播地址的概念。数据在传输过程中经历封装,从应用层到网络接口层逐层添加首部信息。OSI模型将数据通信分为7层,而TCP/IP模型则简化为4层,包括应用层、传输层、网络层和网络接口层,各层承担不同职责。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、TCP/IP的概念:

TCP/IP是网络中的基本通信协议,虽然TCP/IP看起来只包含传输控制协议(TCP)和网际协议(IP),但是实际上TCP/IP是一组协议,它包含上百个能完成各种功能的协议。通常说的TCP/IP是指Internet协议簇,而不只是TCP和IP。

互联网地址:

互联网上每个接口必须有唯一的Internet地址(IP地址),IPV4长度为32位,IPV6长度为128位。以IPV4为例,其32位的地址被分为4个十进制数,其中每个整数对应一个字节,这种表示方法称为作点分十进制表示法。5类不同的地址格式为:
在这里插入图片描述
其对应的各地址的起止范围如下:
在这里插入图片描述
由于互联网上的每个接口必须有唯一的IP地址,因此需要一个管理机构为接入互联网的网络分配IP地址,这个机构叫做网际互联网网络信息中心(InterNIC)。InterNIC只负责分配网络号,主机号的分配由系统管理员来负责。
IP地址分为3类:单播地址(目的端为单个主机)广播地址(目的端为给定网络上的所有主机)多播地址(目的端为同一组内的所有主机)

2、封装:

当应用程序用TCP传输数据时,数据被送入到协议栈中,然后逐个通过每一层直到被当作一串比特流送入网络。其中每一层对收到的数据都要增加一些首部信息(加入尾部信息),其封装过程如下所示:
在这里插入图片描述
其中,TCP传给IP的数据单元称作TCP消息段(TCP段),IP传给网络结构的数据单元称作IP数据报,通过以太网传输的比特流称作帧。
由于TCP、UDP、ICMP和IGMP都向IP传输数据,因此在IP必须生成的IP首部中加入某种标识,以表明数据属于哪一层。通常,IP在首部中存入一个长度为8位的数值,称作协议域,1表示ICMP,2表示IGMP,6表示TCP,17表示UDP。

①、OSI将数据通信的各个功能 分为7层,各司其职,但又相互依存、合作,其7层排列关系如下:

7:应用层6:表示层5:会话层4:传输层3:网络层2:数据链路层1:物理层
在功能上,可以分为:
a、网络群组:物理层、数据链路层和网络层组成;
b、使用者群组:传输层、会话层、表示层和应用层组成。

②、TCP/IP的4层网络模型:

TCP/IP的4层网络模型如下:
在这里插入图片描述

a、应用层:

由使用TCP/IP进行通信的程序所提供,一个应用就是一个用户进程,它通常与主机上的另一个进程合作。应用层的协议包含Telnet和文件传输协议(FTP),应用层和传输层之间的接口由端口号和套接字(Socket)所定义;

b、传输层:

提供端到端的数据传输,可以支持多个应用。最常用的传输层协议是传输控制协议(TCP)和用户数据报协议(UDP)。TCP提供了面向连接的可靠的数据传送、重复数据抑制、拥塞控制和流量控制;UDP提供了无连接、不可靠、尽力传送的服务。如果用户需要,使用UDP传输的应用需要提供各自的端到端的完整性、流量控制和拥塞控制,对于需要快速传输并能容忍某些数据丢失的应用可以使用UDP。

c、网络层:

提供了互联网的“虚拟网络”镜像(这一层屏蔽了更高层协议,使它们不受互联网络层下面的物理层网络体系结构的影响)。网际协议(IP)是这一层最重要的协议,它是一种无连接的协议,不负责下层的传输可靠性。IP不提供可靠性、流控制或者错误恢复。IP提供路由服务,试图把发送的消息传输到目的端。IP网络中的消息单位位IP数据报,这是TCP/IP网络上传输的基本信息单位。

d、网络接口层:

网络接口层也被称为链路层或者数据链路层,是实际网络硬件的接口。这个接口既有能提供可靠的传输,也有能不提供可靠的传输,而且既可以是面向消息的传输,也可以是面向流的传输。TCP/IP没有在这一层规定任何协议,但是几乎可以使用任何一种可用的网络接口。
TCP/IP4层模型详细的分层:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值