网络编程学习之路—1

来源:互联网 发布:mac 隐藏文件无法显示 编辑:程序博客网 时间:2024/05/21 19:26

表示从今天开始起学网络编程了。。。


OSI参考模型:

该模型将网络通信的层次分为7个层次,由低到高分别为物理层,数据链路层,网络层,传输层,会话层,表示层,应用层。

物理层,数据链路层和网络层属于OSI参考模型中的低3层,负责创建网络通信连接的链路。其他4层负责端到端的数据通信。每一层都完成特定的功能,并为上层服务。


在网络通信中,发送端自上而下地使用OSI参考模型,对应用程序要发送的信息进行逐层打包,直至在物理层将其发送到网络中;而接收端自下而上地使用OSI参考模型,而将收到的物理数据进行逐层解析,最后将得到的数据发送给应用程序。(当然并不是所有的网络程序都要经过OSI模型的全部7层)


数据链路层:

负责物理层和网络层之间的通信。在数据链路层,将从网络层接收到的数据分割成特定的可被物理层传输的帧。帧是用来传送数据的结构包,它不仅包括原始数据(要传送的数据)还包括发送方和接收方的网络地址及纠错和控制信息。其中地址标明帧将发送到的主机,而纠错和控制信息则可以保证帧能够准确无误地被发送到目的地主机。


TCP/IP 协议簇体系机构

网络协议通常分不同层次进行开发,每一层分别负责不同的通信功能。一个协议族,比如TCP/IP是一组不同层次上的多个协议的组合。

四层:链路层,网络层(TCP  UDP),运输层(IP),应用层

链路层负责把TCP/IP包放到网络传输介质上和从网络传输介质上接收TCP/IP包。

网络层负责寻址打包以及从一台计算机通过一个或多个路由器到最终目标的包转发机制。

运输层负责给应用层提供会话和数据报通信服务。

应用层负责提供访问其他层服务的能力,并定义应用程序用于交换数据的协议。


在TCP/IP协议族中,网络层IP提供的是一种不可靠的服务,也就是说,它只是尽可能快的把分组从源节点送到目的终点,但是不提供任何可靠性保证,而另一方面,TCP在不可靠的IP层上提供了一个可靠的运输层,为了提供这个可靠的服务,TCP采用了超时重传,发送和接收端到端的确认分组体制,由此可见,运输层和网络层分别负责了不同的功能。


虚电路服务是网络层向传输层提供的一种使所有数据包按顺序达到目的节点的可靠的数据传送方式,进行数据交换的两个节点之间存在着一条为它们服务的虚电路;而数据报服务是不可靠的数据传送方式,源节点发送的每个数据包都要附加地址,序号等消息,目的节点收到的数据包不一定按序到达,还可能出现数据丢包的现象。


0 0