网络七层模型如下所述,一般情况下开发过程中下层传输到物理层不涉及。上层应用层到会话层中,若系统用已有的协议HTTP,FTP等则不需要去考虑解码和编码等操作,直接应用wcf基本可以实现,配置好后。若系统中没用已有的协议那从TCP或者UDP的缓冲中获取到数据后,需要按照自定义的协议进行解码和编码操作(一般称协议外壳解析,后面的章节将详细描述)
物理层----网卡。网卡的作用就是把线路发送过来的高频电流转化数据包,然后传给网卡驱动程序,同是也把网卡驱动程序传送过来的数据包转化成电信号传送出去。定义通过网络设备发送数据的物理方式:是网络媒介和设备间的接口。
数据链路层----网卡驱动程序。定义控制通信连接的程序;封包;监测和改正包传输错误。
网络层----NDIS,NDIS提供网络接口。决定网络设备间如何传输数据;根据唯一的网络设备地址选择包;提供流和拥塞控制,以阻止同时网络资源的损耗。
传输层----TCP,TCP协议的封包处理是在这一层进行的。管理网络中首尾连接的信息传送;提供通过错误恢复和流控制装置传送可靠且有序的包;提供无连接面向包的传送。
会话层----SPI,SPI是服务提供者接口,管理用户间的会话和对话;控制用户间的连接和挂断连接;报告上层错误。
表示层----API,它为应用程序提供接口。API负责SPI与应用程序之间的通信;定义不同体系间不同数据格式;具体说明独立结构的数据传输格式;编码和解码数据;加密和解密数据;压缩和解压缩数据。
应用层----EXE,就是大家常见的应用程序。定义用于网络通信和数据传输的用户接口程序;提供标准服务,比如虚拟终端、文档以及任务的传输和操作。
此文来源于以下两大侠的博文,在下也是刚接触没多久,TCP不属于iso制定的协议集或者TCP与iso制定的协议集关系还不是很清楚,后续学习后修正。
米虫爱喝咖啡http://www.cnblogs.com/mcahkf/p/5157819.html
FlyBack http://www.cnblogs.com/flyback/p/5843652.html