码迷,mamicode.com
首页 > 其他好文 > 详细

一、网络协议介绍

时间:2017-12-02 23:29:35      阅读:357      评论:0      收藏:0      [点我收藏+]

标签:目的   snmp   本机   通过   计算机   中心   form   1.2   orm   

1.1 网络协议分层

  网络协议分不同层次进行开发,每一层分别负责不同的通信功能。

1.1.1 OSI七层模型

1.1.2 TCP/IP分层

  TCP/IP是一组不同层次上的多个协议的组合。TCP/IP通常被认为是一个四层协议系统。

  技术分享图片

  • 链路层:有时也称作数据链路层或网络接口层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。它们一起处理与电脑或是其他介质的物理接口细节
    • ARP:地址解析协议,用来转换IP层和网络接口层使用的地址。
    • RARP:逆地址解析协议,用来转换IP层和网络接口层使用的地址。
  • 网络层:有时也称作互联网层,处理分组在网络中的活动,例如分组的选路。在TCP/IP协议族中,网络协议层包括IP协议(网际协议)、ICMP协议(internet 互联网控制报文协议)以及IGMP协议(internet 组管理协议)。
  • 运输层:主要为两台主机上的应用程序提供端到端的通信。在TCP/IP 协议族中,有两个互不相同的传输协议:TCP(传输控制协议)和UDP(用户数据报协议)。
    • TCP为两台主机提供可靠性的数据通信,它把应用程序交给它的数据分成合适的小块交给下面的网络层,确认接收到的分组,设置发送最后确认分组的超时时钟等。
    • UDP为应用层提供一种非常简单的服务。它只是把称作数据报的分组从一台主机发送到另一台主机,但并不保证该数据报能到达另一端。任何必须的可靠性由应用层提供。为应用程序发送和接收数据报。  
  • 应用层负责处理特定的应用程序细节。比如下面的应用:
    • Telnet:远程登录
    • FTP:文件传输协议
    • SMTP:简单邮件传送协议
    • SNMP:简单网络管理协议 

1.2 互联网的地址

  互联网上的每个接口必须有一个唯一的 Internet 地址(也称为 IP 地址)。IP地址长32bit。IP地址具有一定的结构,五类不同的互联网地址格式如下图:

  技术分享图片技术分享图片

  由于互联网上的每个接口都必须有一个唯一的IP地址,因此必须要有一个管理机构为接入互联网的网络分配IP地址。这个管理机构就是互联网络信息中心(Internet Network Information Center),称作 InterNIC。InterNIC只分配网络号。主机号的分配由系统管理员来负责。InterNIC 由三部分组成:

  • 注册服务:rs.internic.net
  • 目录和数据库服务:ds.internic.net
  • 信息服务:is.internic.net
  • IP地址有三类:
    • 单播地址:目的为单个主机
    • 广播地址:目的端为给定网络上的所有主机
    • 多播地址:目的端为同一组内的所有主机
  • DNS:域名系统,它为一个分布的数据库,由它来提供IP地址和主机名之间的映射信息。

1.3 封装

  当应用程序用TCP传送数据时,数据被送入协议栈中,然后逐个通过每一层直到被当作一串比特流送入网络。其中每一层对收到的数据都要增加一些首部信息(有时还要增加尾部信息)。过程如下图:

  技术分享图片

  • TCP段(TCP segment):TCP传给IP的数据单元称作TCP报文段或简称TCP段
  • IP数据报(IP datagram):IP 传给网络接口层的数据单元
  • 帧(Frame):通过以太网传输的比特流称为帧
  • 分组(packet):IP 和网络接口层之间传送的数据单元。分组即可以是一个IP数据报,也可以是IP数据报的一个片(fragment)。
  • UDP数据报(UDP datagram):UDP数据与TCP数据基本一致。只是UDP传给IP的信息单元称作UDP数据报,UDP的首部长为8字节
  • 协议域:由于TCP、UDP、ICMP和IGMP都要向IP传送数据,因此IP必须在生成的IP首部中加入某种标识,以表明数据属于哪一层。IP在首部存入一个长度为 8 bit 的数值,称作协议域。1表示ICMP协议,2表示IGMP协议,6表示为TCP协议,17表示为UDP协议。
  • 大多数应用程序都可以使用TCP或UDP来传送数据。运输层协议在生成报文首部时要存入一个应用程序标识符。TCP和UDP都用一个16 bit的端口号来不同的应用程序。TCP和UDP把源端口号和目的端口号分别存入报文首部中。
  • 网络接口分别要发送和接收IP、ARP和RARP数据,因此必须在以太网帧首部中加入某种形式的标识,以指明生成数据的网络协议,因此,以太网的帧首部也有一个 16 bit 的帧类型数据。

1.4 分用

  当目的主机收到一个以太网数据帧时,数据就开始从协议栈中由底向上升,同时去掉各层协议加上的报文首部。每层协议盒都要去检查报文首部中的协议标识,以确定接收数据的上层协议。这个过程称作分用(Demultiplexing)。

  技术分享图片

  ICMP和IGMP是IP的附属协议,但是它们的报文都被封装在IP数据报文中,所以将它们放在IP层的上面。ARP和RARP也类似。

1.5 客户服务器模型

  技术分享图片

  一般来说,TCP服务器是并发的,UDP服务器是重复的。

1.6 端口号

  TCP和UDP都采用 16 bit 的端口号来识别应用程序。 

  服务器一般都是通过知名端口号来识别的。对于每个 TCP/IP实现来说,FTP服务的TCP端口号都是21,Telnet是23,TFTP(简单文件传送协议)的UDP端口号都是69。任何TCP/IP实现所提供的服务都用知名的1 -- 1023 之间的端口号。  

  客户端通常对它所使用的端口号并不关心,只保证该端口号在本机上是唯一的就可以了。客户端口号又称作临时端口号,只在用户运行该客户程序时才存在,而服务器只要主机开着的,其服务就运行。临时端口号分配在 1024 -- 5000之间。大于5000的端口号是为其他服务预留的。 

 

一、网络协议介绍

标签:目的   snmp   本机   通过   计算机   中心   form   1.2   orm   

原文地址:http://www.cnblogs.com/kele-dad/p/7922833.html

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