C/C++网络通讯编程(一)

来源:互联网 发布:windows pro是啥 编辑:程序博客网 时间:2024/05/24 06:07

一、InternetTCP/IP协议

    Internet的发展大致可为四个阶段:60年代,Internet起源;70代,TCP/IP协议,Internet随之发展起来;80代,NFSnet现,并成为当今Internet基础;90代,Internet入高速发展时间,并开始向全世普及。

1958美国总统艾林豪威尔向美国国会提出建立DARPADefense Advanced Research Project Agency),即国防部高级研究计划署,简称为ARPA1968年6DARPA提出资源共享计算机网络中

早期的ARPAnet使用网络控制协议(Network Control ProtocolNCP),不能互联不同类型的计算机和不同类型的操作系统,没有纠错功能。

   1973年由KahnVintonCerf人合作为ARPAnet开发了新的一套互联协议,此协议在197412两人正式发表第一份TCP协议详细说明,但此协议有信包失时不能得到有效的纠正。

TCP协议分成两个不同的协议:

l 用来检测网络传输中差错的传输控制协议TCP

l 专门负责对不同网络进行互联的互联网协议IP

从此TCP/IP协议诞生。

    1983ARPAnet上停止使用CNP互联网上的主机全部使用TCP/IP协议,TCP/IP协议成为Internet世界语

二、OSI模型与TCP/IP协议体系结构

    网络采用分而治之的方法设计,将网络的功能划分为不同的醋,以分层的形式有机组合在一起,每层实现不同的功能,其内部实现方法对外部其他层次来说透明,每层向上层提供服务,也可以使用下层提供的服务。网络体系结构即指骨网络的层次结构和每层所使用协议的集合。两类非常重要的体系结构是:OSI与TCP/IP

OSI(开放系统互联 Open System Interconnection)

    国际标准化组织(ISO)制定OSI模型,该模型定义了不同计算机互联的标准,是设计和描述计算机通信的基本框架。OSI模型把网络通信的工作分为七层:物理层,数据链路层,网络层,传输层,会话层,表示应用层。

 

设计目的:

OSI模型的设计目的是成为一个所能销售商都能实现的开放网路模型,来克服使用众多私有网络模型所带来的困难和低效性。OSI是在一个备受尊敬的国际标准团体参与下完成的, 这个组织就是ISO国际标准化组织)。

分层原则:

网络中各结点都有相同的层次

不同结点相同层次具有相同的功能

同一结点相邻层间通过接口通信

每一层可以使用下层提供的服务,并向上层提供服务

不同结点的同等层间通过协议来实现对等层间的通信

 

OSI/RM分层

对等层实体间通信时信息的流动过程

对等层通信的实体

对等层实体之间虚拟通信,下层向上层提供服务;实际通信在最低层完成,发送方数据由最高层逐渐向下层传递;到接收方数据由最低层逐渐向高层转递。

协议数据单元PDU:OSI参考模型中,对等层协议之间交换的信息单元统称为协议数据单元(PDU protocol Data Unit)。

而传输层及以下各层的PDU另外还有各自特定的名称:

传输-------数据段(segment

网络------分组(数据包)(Packet

数据链路层------数据帧(Frame

物理------比特Bit

1物理层(PhysicalLayer)

物理层是OSI分层结构体系中最重要、最基础的一层,它建立在传输媒介基础上,实现设备之间的物理接口。只接收和发送一串比特流,不考虑信息的意义和信息结构。物理层的数据单位是位(比特流)。

属于物理层定义的典型 规范代表包括:EIA/TIARS-232RJ-45等。

物理层的主要功能:为数据端设备提供传送数据的通路,数据通路可以是一物理媒体,也可以是多个物理媒体连接而成。

物理层的主要设备:中继器、集线器。

中断器的应用:数据传输、数据转换及延长网络,作用:放大信号、补偿信号衰减。

集线器(Hub:局域网中的基础设备,功能:信号放大。

2数据链路层(DataLinkLayer

    在物理层提供比特流服务的基础上,建立相邻结点之间的数据链路,通过差错控制提供数据帧(Frame)在信息上无差错的传输,同时为其上面的网络层提供有效的服务。

作用包括:物理地址寻址、数据的成帧、流量控制、数据的检错、重发等等。

数据链路层协议的代表包括:SDLC,HDLC,PPP,STP,中继等。

主要功能:实现系统实体间二进制信息块的正确传输。为网络层提供可靠无错误的数据信息。

数据链路层主要设备:二层交换机、网桥

3网络层(Network layer)

网络层也称为通信子网层,是高层协议之间的界面层,用于控制通信子网的操作,是通信子网与资源子网的接口。

在网络层交换的数据的单位是:数据包(packet)。

网络层协议的代表包括:IP,IPX,OSPF等。

网络层主要功能:路由选择和中继。

网络层主要设备:路由器。

路由器原理:路由器分本地路由器和远程路由器,本地路由器是用来连接网络传输介质的:光纤、双绞线及同轴电缆;远程路由器是用来连接远程传输介质,并要求相应的设备,如电话线要配调制解器,无线要通过无线接收机、发射机。路由器作用:连通不同的网络,信息传输。

4、传输层(Transport layer

传输层建立 在网络层和会话层之间。实质上它是网络体系结构中高低层衔接的一个接口层。

传输层的数据单元称为:数据段(segment)这个层负责获取全部信息,因此,它必须跟踪数据单元碎片、乱序到达的数据包和其它在传输过程中可能发生的危险。

传输层协议的代表包括:TCPUDPSPX等等。

5、会话层(Session layer

此层可称为会晤层或对话层,在会话层及以上的高层次中,数据传送的单位不再另外命名,统称为报文。

主要功能:会话层连接到传输层的映射会话连接的流量控制,数据传输,会话连接恢复与释放,会话连接管理 及差错控制。

6、表示层(Presentation layer)

    表示层对向上对应用层服务,向下接来自会话层的服务。表示层为应用提供服务包括语法选择、语法转换等。

7、应用层(Application layer

网络应用层是通信用户之间的窗口,为用户提供网络管理,文件传输、事务处理等服务。

应用层为操作系统或网络应用程序提供访问网络服务的接口。

应用层协议的代表包括:Telnet,FTP,HTTP,SNMP,DNS等。

0 0
原创粉丝点击