当前位置:天才代写 > tutorial > C语言/C++ 教程 > Linux下C编程:网络编程之通信机制和体系布局模式

Linux下C编程:网络编程之通信机制和体系布局模式

2017-11-02 08:00 星期四 所属: C语言/C++ 教程 浏览:522

提到Linux 操纵系统,就不能不提到网络技能。Linux 系统自己就是一个网络的产品,它在网络上可以供人们自由下载,并获得修改和完善。。Linux 系统支持多种网络协议,它的shell 还提供了强大的联网呼吁。这些利益使得Linux 为很多中小型的网络应用提供了完全的办理方案.

提到计较机网络,就不得不先先容一下它的通信机制和体系布局模式。

1.通信模式

所有的网络通信的实现方法可以分为两种:线路互换和包互换。

所谓线路互换,就是指传输时在发送端和吸收端之间成立一个特定的线路毗连,数据就可以在这条线路上传输。最常用的电话就是回收这种线路互换的技能。可是计较机网络回收的是包互换的要领。所有的计较机利用一个配合的网络毗连,数据的发送端将要传输的数据支解成块,而每个块颠末适当的处理惩罚(数据封装)后形成一个数据包,包中有吸收端的地点等须要信息,而且每个包单独传输。包中的数据并不是限定死的,只要担保数据的正确传输即可,详细应该界说哪些信息,则与所利用的协议有关。

2.OSI 尺度

OSI 尺度就是开放系统互联尺度(Open System Interconnection),它是国际尺度化组织在1977 提出的一种参考模式。它界说的是一种七层通信协议尺度。详细分层布局和成果如下(从高到低):

Linux下C编程:网络编程之通信机制和体系机关模式

(1)应用层

应用层是网络的最高层,也就是最靠近用户的一层。应用层里包括了构筑在各类通信协议上的网络应用软件,可以实现与用户直接交互的成果。譬喻电子邮件和文件传输措施等。

(2)暗示层

暗示层完成被传输数据的暗示息争释事情,它包括数据转换和数据加密以及数据压缩等。它的主要成果为:为用户提供执行会话层处事原语的手段;提供描写巨大数据布局的要领;打点当前所需的数据布局集;完成数据的内部名目与外部名目间的转换。

(3)会话层

会话层利用运输层协议提供的靠得住的端到端通信处事,并增加一些用户所需要的附加成果和成立差异呆板上的用户之间的数据互换。

(4)传输层

它是OSI 网络体系布局中最焦点的一层,它把实际利用的通信子网与高层应用分隔,提供发送端和吸收端之间的高靠得住低本钱的数据传输。TCP 和UDP 协议都属于这一层。

(5)网络层

网络层主要对主机和网络之间的交互举办界说,它又被称为通信子网层,界说了在网络中传输的根基数据单位以及目标寻址和选路的观念。IP 协议属于这一层。

(6)数据链接层

数据链接层对基层传来的数据举办打包封装,将上层的数据支解成帧,它还完成流量节制和过错处理惩罚的事情。

(7)物理层

物理层是OSI 的最底层,它划定传输媒体自己及与其相关联的机器和电气接口。这些接口和传输媒体必需担保发送和接管信号的一致性。

TCP/IP 协议

TCP/IP 协议是一组在网络中提供靠得住数据传输和无毗连数据处事的协议。个中提供靠得住数据传输的协议称为传输节制协议TCP,而提供无毗连数据包揽事的协议叫做网际协议IP。可是TCP/IP 协议并不是只有TCP 和IP 两个协议,而是包括许多其他协议的一个网络协议的荟萃。

TCP/IP 协议于1983年开始在ARPA网上运行,并于当年插入BSDUNIX 操纵系统的内核,成为该操纵系统的一部门。随后TCP/IP 协议跟着UNIX 操纵系统的普及而遍及风行,逐渐成为利用最遍及的协议。利用TCP/IP 协议的网络提供的主要处事有:电子邮件、文件传送、长途登录、网络文件系统、电视集会会议系统以及Mwsaic 和万维网等。

TCP/IP 协议的体系布局包括四层(从高到低):

(1)应用层

应用层包罗网络应用措施和网络历程,是与用户交互的界面,它为用户提供所需要的各类处事,包罗长途登录、文件传输和电子邮件等。它的浸染相当于OSI 中的应用层及暗示层和会话层。

(2)传输层

相当于OSI 中的传输层,它为应用措施提供通信处事,这种通信又叫端对端通信。它有三个主要协议:传输节制协议(TCP),用户数据包协议(UDP)和互联网节制动静协议(ICMP)。

TCP 协议 以成立毗连高靠得住性的动静传输为目标,它认真把大量的用户数据按必然的长度构成多个数据包举办发送,并在吸收到数据包之后按解析顺序重组和规复用户数据。它是一种面向毗连的靠得住的双向通信的数据流。

UDP 协议 提供无毗连数据包传输处事,它把用户数据解析为多个数据包后发送给吸收方。它具有执行代码小以及系统开销小和处理惩罚速度快等利益。

#p#分页标题#e#

ICMP 协议 主要用于端主机和网关以及互联网打点中心等地动静通信,以到达节制打点网络运行的目标。ICMP 协议能发送堕落动静给发送数据包的端主机,尚有限制流量的成果。

(3)网络层

相当于OSI 的网络层,利用的协议是IP 协议。它是用来处理惩罚呆板之间的通信问题的,它吸收传输层请求,传输某个具有目标地点信息的分组。该层把分组封装到IP 数据包中,填入数据包的头部(包头),利用路由算法来选择是直接把数据包发送到方针主机照旧发给路由器,然后把数据包交给下面的网络接口层中的对应网络接口模块。

(4)网络接口层

相当于OSI 中的数据链接层和物理层。它认真吸收IP 数据包和把数据包通过选定的网络发送出去。

Linux下C编程:网络编程之通信机制和体系机关模式

查察全套文章:http://www.bianceng.cn/Programming/C/201212/34807.htm

 

    关键字:

天才代写-代写联系方式