星期二, 七月 03, 2007

tcp/ip概述

开始看煌煌三大卷的tcp/ip详解,边看边写笔记。

Vol:1,chapter 1 概述


1.分层

tcp/ip协议族通常认为是一个四层协议,自上而下为:应用层-运输层-网络层(互联网层)-链路层(网络接口层)。

链路层主要包括操作系统中的设备驱动程序和计算机的网卡,处理物理接口的细节。

网络层处理分组在网络中的活动,比如分组的选路。在tcp/ip协议族中,有ip协议,ICMP协议,IGMP协议。

运输层为两台主机的应用程序提供端到端的通信。在tcp/ip协议族中,有TCP和UDP两种传输协议。前者提供可靠的数据通信,而后者不保证可靠性。

应用层负责处理特定的应用程序细节。

2.tcp/ip的分层

TCP和UDP是最著名的运输层协议,二者都使用IP作为网络层协议。Telnet、FTP、SMTP都是使用TCP协议;SNMP是使用UDP协议。

IP是网络层主要协议,ICMP是IP协议的附属协议,IP层用它来与其它主机或路由器交换错误报文和其它重要信息,Ping和Tracerout都是使用ICMP;IGMP是Internet组管理协议,它用来把一个UDP数据报多播到多个主机。
3.互联网的地址

有五类IP地址:
A类:0+7位网络号+24位主机号
B类:10+14位网络号+16位主机号
C类:110+21位网络号+8位主机号
D类:1110+28位多播组号
E类:11110+27位备用号
4.封装
从最上层,到链路层,封装的顺序是这样的:




5.客户-服务器模型

两种类型:重复型和并发型。(我觉得重复型叫循环型更合适)

作为服务器端,重复型的特征为:等待客户端的请求-》处理客户端的请求-》发送响应给客户端-》等待客户请求…………;并发型的特征为:等待客户请求-》启动一个新的服务器来处理客户请求,并返回响应到客户端。并终止服务。这个过程依赖具体的操作系统-》等待客户请求……

6.端口号

TCP和UDP使用16bit来识别端口号,从0到65536。
服务一般都是通过端口来识别的,比如FTP服务的TCP端口一般是21,Telnet的TCP端口是23。任何T C P / I P实现所提供的服务都用知名的 1~1 0 2 3之间的端口号。这些知名端口号由 I n t e r n e t号分配机构(Internet Assigned Numbers Authority, IANA)来管理。到1 9 9 2年为止,知名端口号介于1~2 5 5之间。2 5 6~1 0 2 3之间的端口号通常都是由U n i x系统占用,以提供一些特定的U n i x服务—也就是说,提供一些只有U n i x系统才有的、而其他操作系统可能不提供的服务。

客户端通常对它所使用的端口号并不关心,只需保证该端口号在本机上是唯一的就可以了。客户端口号又称作临时端口号(即存在时间很短暂)。这是因为它通常只是在用户运行该客户程序时才存在,而服务器则只要主机开着的,其服务就运行。

没有评论: