扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:中国IT实验室 2007年8月29日
关键字:
在本页阅读全文(共3页)
最简单的路由器的概念是一台装有两块网卡的主机,主机内部安装的路由软件可以根据IP地址在两块网卡间转发IP数据包,两块网卡各有一个IP地址,具有两个物理接口的路由器同这个道理是类似的。
由上图图四可以看到,IP地址的概念是属于IP协议,IP协议是属于OSI模型第三层网络层的,所有跨越网络层的设备都需要有IP地址。最左边的主机同路由器的左侧接口各有一个IP地址,使用IP协议通信;最右边的服务器和路由器右侧接口各有一个IP地址,使用IP协议通信;路由器的不同接口的IP地址是属于不同的IP子网的,路由器就是在不同IP子网间传送IP数据包的设备,路由是根据IP数据包里的地址选择正确传递路径的过程。
IP协议和TCP协议:
图五
上图图五是两个主机通过多个路由器通信的过程,这是当今互联网的基本组成的场景。抽象一下上图的拓扑:主机和中间的多个路由器是拓扑图上的点,各个点之间是线,所以,互联网的拓扑就是由无数点和线组成的网络,从这里深究下去,互联网拓扑的设计可以说就是“图论”。点和点之间是不同的IP子网,上图两台主机间相互通信的过程是由无数个IP数据包(packet)在之间传送的过程构成。
在中间的A到E的路由器会分析由主机发出的每个数据包的IP包头(网络层信息),根据里面的IP地址决定下一个接收的路由器,最终到达目的主机。决定的过程叫IP数据包选路的过程,即路由过程。许多路由器在一起为数据包选择路径所依赖的法则叫做路由协议。
上图可以看到,从一侧到另一侧有不同的路径:
假设从一侧发往另一侧一封email,email的数据类被拆分为很多IP数据包,并逐层加上每层头数据字节,根据A到E这些路由器的路由协议和网络状况,这些IP数据包会走不同的路径到达另一侧,到达的顺序不同于发送的顺序,在另一侧的主机会按数据包的发送顺序重新排列,并一层层剥离PDU的包头数据,提取出里面的应用数据,重构为一封email。
在上面这个过程中,有些数据包甚至会损坏或者丢失,需要重传这些数据包。这样,为了保障IP数据包传送的正确顺序和不被丢失,需要其它的协议跟IP协议一起工作,这就是OSI模型中第四层的传输控制协议(TCP)的由来,如下图图六。TCP协议包括重传数据包和在接收端按数据包的发送顺序重新排列的机制,可以保障发送的每个数据包都可以被正确接收。email,www等互联网数据业务都是使用TCP传输的,互联网最初是为数据业务所设计的,所以大家都将互联网称为TCP/IP网络。
图六
TCP确保每个数据包都可以被接受到的机制使之被归为“有连接的传输协议”,可以看到在图六中,还有一个跟TCP并列的传输层协议:用户数据报协议(UDP),这个协议同TCP不同的是,并不能保障每个发送的数据包都被接收到,所以,UDP被归为“无连接的传输协议”,UDP更适合不追求数据的准确性,而关注时延、抖动的音频和视频应用,以后会谈到。
婵犵數濮烽。浠嬪焵椤掆偓閸熷潡鍩€椤掆偓缂嶅﹪骞冨Ο璇茬窞闁归偊鍓涢悾娲⒑闂堟单鍫ュ疾濠婂嫭鍙忔繝濠傜墛閸嬨劍銇勯弽銊с€掗柟钘夊暣閺岀喖鎮滈埡鍌涚彋閻庤娲樺畝绋跨暦閸洖鐓涢柛灞剧矋濞堟悂姊绘担绛嬪殐闁搞劋鍗冲畷銏ゅ冀椤愩儱小闂佹寧绋戠€氼參宕伴崱妯镐簻闁靛牆鎳庢慨顒€鈹戦埥鍡椾簼婵犮垺锚铻炴俊銈呮噺閸嬪倹绻涢崱妯诲碍閻庢艾顦甸弻宥堫檨闁告挾鍠庨锝夘敆娓氬﹦鐭楁繛鎾村焹閸嬫捇鏌e☉娆愬磳闁哄本绋戦埞鎴﹀川椤曞懏鈻婄紓鍌欑劍椤ㄥ懘鎯岄崒鐐靛祦閹兼番鍔岄悞鍨亜閹烘垵顏╅悗姘槹閵囧嫰寮介妸褎鍣ョ紓浣筋嚙濡繈寮婚悢纰辨晣鐟滃秹鎮橀懠顒傜<閺夊牄鍔庣粻鐐烘煛鐏炶姤鍠橀柡浣瑰姍瀹曠喖顢橀悩铏钒闂備浇宕垫慨鎶芥⒔瀹ュ鍨傞柦妯猴級閿濆绀嬫い鏍ㄧ☉濞堟粓姊虹涵鍛【妞ゎ偅娲熼崺鈧い鎺嗗亾闁挎洩濡囧Σ鎰板籍閸繄顓洪梺缁樺姇瀵剙螖閸涱喚鍘搁梺鍓插亽閸嬪嫰鎮橀敃鍌涚厱閻庯綆鍋嗘晶顒傜磼閸屾稑绗ч柟鐟板閹煎湱鎲撮崟闈涙櫏闂傚倷绀侀幖顐も偓姘卞厴瀹曞綊鏌嗗鍛紱閻庡箍鍎遍ˇ浼村磿瀹ュ鐓曢柡鍥ュ妼婢ь垰霉閻樿秮顏堟箒闂佹寧绻傚Λ妤呭煝閺囥垺鐓冪憸婊堝礈濮樿泛钃熼柕濞у嫷鍋ㄩ梺缁樺姇椤曨參鍩㈤弴銏″€甸柨婵嗗€瑰▍鍥ㄣ亜韫囨稐鎲鹃柡灞炬礋瀹曢亶顢橀悢濂変紦