码迷,mamicode.com
首页 > 系统相关 > 详细

linux网络编程之TCP/IP基础篇(一)

时间:2015-08-05 00:48:50      阅读:237      评论:0      收藏:0      [点我收藏+]

标签:

  从今天起,将会接触到网络编程,平台是linux,实现语言C语言,最后将会实现一个简易的miniftp服务器。

  主要的内容安排为:linux网络编程之TCP/IP基础篇,SOCKET编程篇,进程间通信篇,线程篇,实战ftp篇。

  1.ISO/OSI参考模型:open system interconnection开放系统互联模型是由OSI(international organization for standardization )国际标准化组织定义的
网络分层模型,共七层。

技术分享

  各层的具体含义:
  物理层(Physical Layer):物理层定义了所有电子及物理设备的规范,为上层的传输提供了一个物理介质,本层中数据传输的单位为比特b。属于本层定义的规范有EIA/TIA RS-232,EIA/TIA RS-449,V.35,RJ-45等,实际使用中的设备如网卡等属于本层。
  数据链路层(Data Link Layer):对物理层收到的比特流数据封装成帧。提供可靠的数据传输服务,实现误差错的数据传输,在数据链路层中的数据单位为帧frame,属于本层定义的规范有SDLC,HDLC,PPP,STP,帧中继等,实际中使用的设备如switch交换机属于本层。
  网络层(Network Layer):网络层负责将各个子网之间的数据进行路由选择,分组与重建,本层中数据传输的单位为数据包(package),属于本层中定义的规范有IP,IPX,RIP,OSPF,ICMP,IGMP等,实际中使用的设备如路由器属于本层。
  传输层(Transport Layer):提供可靠的数据传输服务,它检测路由器丢弃的包,然后产生一个重传请求,能够将乱序收到的数据包重新排序。
  会话层(Session Layer):管理主机之间会话过程,包括会话建立,终止和会话过程中的管理。
  表示层(Presentation Layer):表示层对网络传输的数据进行交换,使得多个主机之间传送的信息能够相互理解,包括数据的压缩,加密,格式转换等
  应层(Application Layer):应用层与应用程序界面沟通,以达至展示给用户的目的,在此常见的协定有:HTTP,HTTPS,FTP,TELNET,SSH,SMTP,POP3

  2.OSI和邮件发送(用邮件发送的过程模拟OSI协议)

技术分享

 

 

 

  3.TCP/IP四层模型

  技术分享

  4.TCP/IP四层模型中重要的协议

  技术分享

 

  5.TCP/IP四层模型的实例

             技术分享

  6.对等通信

    对等通信:相同层比如传输层和传输层的通信看似是直接通信的,就是说的对等通信,其实是建立在其他层通信协作的基础上的。

    实际上TCP/IP可以看成一个协议栈,数据从A端经过FTP,TCP,IP,以太网驱动程序逐步打包,然后到B端的以太网驱动程序,经过IP,TCP,FTP又逐步的解包。

    7.封装

   技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

  总结:

   本篇文章主要讲了ISO/OSI参考模型,TCP/IP四层模型,以及一些基本概念(对等通信,封装,分用,端口)

 

linux网络编程之TCP/IP基础篇(一)

标签:

原文地址:http://www.cnblogs.com/hsp-77-abc/p/hsp-1615433864_NET_001.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!