TCP/IP协议簇概述

转载 2015年07月10日 19:49:11

TCP/IP是一个真正的开放式系统。它可以使运行着完全不同的操作系统,由不同厂家生产的各种型号的计算机互相进行通信。TCP/IP协议簇是Internet的基础,也是当今最流行的组网形式。

TCP/IP的分层
网络协议通常分不同层次进行开发,每一层分别负责不同的通信功能。
TCP/IP模型分为:网络接入层,网络层,传输层(主机-主机层),应用层。
 
 
网络接入层:处理与电缆(或其他任何传输媒介)的物理接口细节(编码的方式,成帧的规范等)。现今在网络接入层上较流行的技术有IEEE802.3以太网,无线,帧中继,ATM,X.35,PPP等。
 
网络层:处理分组在网络中的活动,为经过逻辑网络路径的数据进行路由选择。网络层上的协议主要有IP,ICMP,IGMP等。网络层上的载体是IP协议,同时被TCP和UDP使用。
基于IP的附属协议有ICMP,IGMP。(ICMP和IGMP的定位比较模糊,位于网络层和传输层之间。而RARP和ARP则位于接入层和网络层之间)。
ICMP:IP层使用ICMP与其他主机或路由器交换错误报文和其他重要信息。使用ICMP的应用程序主要有:Ping和traceroute。
IGMP:internet组管理协议。它用来把一个UDP数据报多播到多个主机。
ARP和RARP是某些网络接口使用的特殊协议,用来转换IP层和网络接口层使用的地址。
 
传输层:为两台主机上的应用程序提供端到端的通讯。传输层协议有传输控制协议(TCP)和用户数据报协议(UDP)。
TCP使用不可靠的IP服务,并提供一种可靠的传输层服务。TCP所做的工作包括把应用程序交给它的数据分成合适的小块交给下面的网络层,确认接收到的分组,设置发送最后确认分组的超时时钟等。基于TCP的应用层程序有telnet,Rlogin,FTP ,SMTP。
UDP为应用程序发送和接收数据报,和TCP不同,UDP是不可靠的。UDP只是把称作数据报的分组从一台主机传送到另一台主机,但不保证该数据报能到达另一端。任何必须的可靠性由应用层来提供。基于UDP的应用层程序有TFTP,DNS,BOOTP,SNMP。
传输层和数据链路层都定义了流控和差错控制机制,不同之处在数据链路层强调控制数据链路上的流量,即连接两台设备的物理介质的流量。而传输层控制逻辑链路上的流量,即两台设备的端到端连接。这种连接可能跨越多个数据链路。
 
应用层负责处理特定的应用程序细节。如Telnet,FTP,SNMP,SMTP,TFTP等。
应用层上的用户进程有直接调用ICMP的,比如PING,Traceroute。
应用层上的路由协议有RIP和BGP。BGP使用TCP端口179传送它的路由信息。而RIP使用UDP接口传递它的信息。其他路由协议是IP层协议,因为它们直接在IP数据包中封装了它们的信息。
 
互联网地址
IP地址的分类:(A,B,C,D,E)
有三类IP地址:单播地址,广播地址,多播地址。
单播地址目的为单个主机;广播地址目的为给定网络上的所有主机;多播地址目的为同一组内的所有主机。
域名系统:是一个分布式的数据库,提供IP地址和主机名之间的映射信息。由成千上万台DNS服务器组成。
分配全球IP地址的管理机构:InterNIC ( internet network information centre)
interNIC  http://rs.internic.net(分配面向全球的IP地址)
中国:http://www.cnnic.net.cn (中国境内的互联网地址和AS号申请)
 
封装与分用
当应用程序用TCP传送数据时,数据被送入协议栈中,然后逐层通过直到物理层以比特流形式送入网络。其中每一层对收到的数据都要增加一些首部信息(有时还要增加尾部信息),这个过程叫做封装。
以太网数据帧结构的物理特性是其长度必须在46-1500字节之间。
网络接口分别要发送和接收IP,ARP和RARP的数据,因此也必须在以太网的帧首部加入某种形式的标识,以指明生成数据的网络层协议。以太网帧首部有一个16bit的帧类型域(ip,arp,rarp)。
由于TCP,UDP,ICMP,IGMP都要向IP传送数据,因此IP必须在生成的IP首部中加入某种标识,以表明数据属于哪一层。IP在首部中存入一个长度为8bit的数值,称作协议域(icmp,igmp,tcp,udp,esp,gre),1表示ICMP,2表示IGMP,6表示TCP,17表示UDP。
TCP和UDP都用一个16bit的端口号来表示不同的应用程序(ftp,telnet,http)
TCP和UDP把源端口号和目的端口号分别存入报文首部中。
 
分用:当目的主机收到一个以太网数据帧时,数据就开始从协议栈中由下层升往上层,同时去掉之前各层协议加上的报文首部。每层协议都要去检查报文首部中的协议标识,以确定接收数据的上层协议。
 
客户服务器模型
C/S模型主要分为重复型或并发型。
并发型服务器的优点在于它是利用生成其他服务器的方法来处理客户的请求。
TCP服务器是并发的,而UDP服务器是重复的(重复型的应用已经很少了)。
 
端口号
服务器一般都是通过知名端口号来识别的。客户端口号又称作临时端口号(即存在时间很短)。大多数TCP/IP实现给临时端口分配1024-5000之间的端口号。(常从1024往上选)
Solaris2.2是一个例外,通常TCP和UDP的缺省端口号从32768开始。
大于5000的端口号是给其他服务器预留的。(internet上并不常见的服务)
知名端口号是由Internet号分配机构(Internet Assigned Number Authority,IANA)来管理。
 
大多知名端口为奇数的由来:
由于端口号都是从TCP的前身NCP派生而来。NCP是单工的,所以预留了一对奇偶端口号。而TCP/IP协议中的TCP和UDP是全双工的,所以只引用了其中的奇数端口。
 
Internet和internet的区别
internet:用一个共同的协议簇把多个网络连接在一起。
Internet:通过TCP/IP互相通信的所有主机的集合。
Internet是一个internet,但internet不等于Internet。

TCP/IP协议簇分层详解

TCP/IP 和 ISO/OSI         ISO/OSI模型,即开放式通信系统互联参考模型(Open System Interconnection Reference Model...

TCP-IP协议概述

  • 2012年01月06日 14:43
  • 129KB
  • 下载

TCP/IP协议族概述

  • 2009年02月03日 18:33
  • 7.8MB
  • 下载

TCP/IP协议栈概述及各层包头分析

一、摘要   对之前几篇博文涉及到的网络通信协议进行分析,概述出TCP/IP的协议栈模型,最后根据实例对各层包头进行分析。   二、标准TCP/IP协议栈模型   标准TCP/...
  • zdzh1
  • zdzh1
  • 2014年03月18日 21:51
  • 1723

TCP/IP协议栈概述及各层包头分析

一、摘要   对之前几篇博文涉及到的网络通信协议进行分析,概述出TCP/IP的协议栈模型,最后根据实例对各层包头进行分析。   二、标准TCP/IP协议栈模型   标准TCP/IP协议是用于计...

TCP/IP协议复习-概述

为了方便自己复习,于是把课本的内容敲一下: 概述:
  • zoopang
  • zoopang
  • 2014年04月22日 20:34
  • 805

TCP/IP协议 学习 第一章概述

第一章  概述 网络协议通常分不同层次进行开发。TCP/IP是四层协议系统 链路层:(网络接口层)同城包括操作系统中的设备驱动程序(ARP) 网络层:处理分组在网络中的活动。IP协议、ICMP协...

TCP/IP协议概述

网络协议通常分不同层次进行开发,每一层分别负责不同的通信功能。一个协议族,比如TCP/IP,是一组不同层次上的多个协议的组合。 1、  TCP/IP协议族的四个层次:应用层、传输层、网络层、链路层 2...

TCP/IP协议详解:卷一----笔记(1)概述

TCP/IP分层模型 下图是OSI模型和TCP/IP协议模型的对比。 TCP/IP通常被认为是一个四层协议系统,每一层负责不同的功能: 1)应用层:用户通过应用程序与该层进行交互,主要包括HTTP...

嵌入式linux的网络编程(1)--TCP/IP协议概述

嵌入式linux的网络编程(1)--TCP/IP协议概述1.OSI参考模型及TCP/IP参考模型 通信协议用于协调不同网络设备之间的信息交换,它们建立了设备之间互相识别的信息机制.大家一定都听说过著名...
  • ce123
  • ce123
  • 2013年12月18日 21:54
  • 3653
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:TCP/IP协议簇概述
举报原因:
原因补充:

(最多只允许输入30个字)