(1)从名字分析

从“ip分组交换”这个名字中,我们看看涉及哪些事情。

1)交换
主要涉及两类交换。

· 交换机:负责网内部数据交换
· 路由器:负责网间的数据交换。
ip分组交换技术的核心就是路由器的网间数据交换。

事实上,“ip分组交换”中的交换二字,重点指的是路由器实现的网间交换。在实现网间交换时,路由器会暂存数据,等路由器找到合适的转发路径后,再将数据转发出去。

2)分组
意思是将数据拆分成很多小的部分,分别对这些数据加一些额外的标记(包头包尾),然后再发送出去,收到的一方会将收到的不同部分的数据拆包(去掉包头包尾),然后将数据拼凑在一起,得到的就是完整的数据,应用程序拿到这个数据你就可以使用数据做事了。

封包拆包的事谁来做?
专门由实现TCP/IP协议的代码来做。

3)Ip
路由器在实现的网间数据交换时,以路由器为界,分为内网和外网,内网和外网分别属于不同的Ip网段,ip网段内的各计算机、路由器都被分配了该网段的ip地址,所以一定涉及ip地址的使用。

(2)ip分组交换原理

1)ip分组交换图示
当然这里需要有一个假设的前提,数据一定会过路由器,如果只是网段内的计算机之间通信的话,数据就只过交换机,就不需要经过路由器了。

ip分组交换技术的核心设备就是路由器,要说明路由器的作用,我们要必须举数据必须过路由器的例子。

图:

2)步骤描述
有了上面的分析,现在就好理解“ip分组交换”技术了,该技术的基本原理就是,

第一步:将数据分成很多的份,每份就是一个分组

第二步:路由器实现网间的分组数据的交换,让数据从一个网段到另一个网段,最终通过目标ip找到目的计算机

源计算机和目标计算都是通过路由器连接在了互联网中,互联网的中心是一堆的路由器,因此源计算机将这些分组数据甩给路由器,路由器会甩给下一站路由器,直到通过目标Ip的比对,找到目标计算机。

这个过程中会经过一系列的路由器,路由器会通过寻径算法,找到一条合适的通路将分组数据交换传输到目的地,数据被分成了很多的份,每份数据走的路径并不一定相同,因为根据网络的繁忙情况,路由器寻经算法会随时为分组数据更改路径。

第三步:目标计算收到所有的分组数据后,将数据拼凑在一起,就得到了完整的数据。
有很多的疑问?

3)再谈路由器的作用
(a)是骑墙的网间设备
路由器将网络分为了内网和外网,为了便于说明,这里就不再说成是内网和外网,而说成A网和B网。

骑墙设备的特点是,路由器既属于A网同时也属于B网,因此路由器必须要有两个ip地址,一个是A网ip另一个是B网ip。

(b)实现网间数据交换
将数据从A网交换到B网,或者说从B网交换到A网。

比如数据从A网交换到B网时,路由器首先要作为A网的设备,接收A网设备发送的分组数据时,这时路由器需要使用
A网的ip。

路由器接收到分组数据后,需要交换到B网中,并在B网中传输,此时路由器属于B网中的设备,路由器就必须使用B网的ip。

(c)站在路由器的角度再次理解什么是“ip分组交换”技术
路由器的关键作用就是,实现分组数据在不同网段间的交换,不同网段的网络会有各自的ip网段,如果给“路由器网间交换的过程”一个简洁称呼的话,就是“ip分组交换”。

互联网的“ip分组交换技术”的更多相关文章

  1. IP多播技术及其应用

    随着全球互联网(Internet)的迅猛发展,上网人数正以几何级数快速增长,以因特网技术为主导的数据通信在通信业务总量中的比列迅速上升,因特网业务已成为多媒体通信业中发展最为迅速.竞争最为激烈的领域. ...

  2. 【miscellaneous】IP多播技术及其编程

    标  题: IP多播技术及其编程 发信站: 幽幽黄桷兰 (Mon Jun 16 10:35:39 2003) 转信站: SMTH!maily.cic.tsinghua.edu.cn!news2.ues ...

  3. 文件转移 互联网组成 路由器 分组交换 交换机 冲突域 网卡 数据帧的发送与接收会带来CPU开销 CPU中断 双网卡切换

    https://zh.wikipedia.org/zh-cn/网段 在以太网环境中,一个网段其实也就是一个冲突域(碰撞域).同一网段中的设备共享(包括通过集线器等设备中转连接)同一物理总线,在这一总线 ...

  4. 一文让你秒懂互联网TCP/IP协议的深层含义

    什么是 TCP/IP 协议 首先,协议,可以理解为是一套统一的规则,就像行业标准.由于互联网主要的功能是传输信息,所以其协议一般是管理系统之间如何相互通信的规则. 用邮政和物流等线下的“运输协议”来理 ...

  5. lvs之ip-tun(ip隧道)技术的学习与实践

    1.配置测试环境 修改IP windows 200.168.10.4 lvs server  ip:200.168.10.1 因为IP隧道模式只需要一个网卡  所以就停掉其他网卡 web server ...

  6. loadunner使用socket协议来实现多客户端连接同一服务器脚本(使用到IP欺骗技术)

    第一部分: #include "lrs.h" vuser_init(){ lrs_startup(257); return 0;} 第二部分: Action(){ char *Re ...

  7. 获取本机正在使用的ipv4地址(访问互联网的IP)

    [转]原文地址:http://www.cnblogs.com/lijianda/p/6604651.html 1.一个电脑有多个网卡,有线的.无线的.还有vmare虚拟的两个网卡.2.就算只有一个网卡 ...

  8. 单片机联网需求攀升 WIZnet全硬件TCP/IP技术崛起

    --新华龙电子为韩国WIZnet公司网络芯片授权代理商,具有20多年的专业团队IC应用开发实力-- 如今不管是在企业还是小区.街道,甚至是居民室内,以太网接口无处不在.有鉴于此,电子设备必将向更加智能 ...

  9. IP视频通信中的"丢包恢复技术”(LPR)

    转自:http://blog.csdn.net/blade2001/article/details/9094709 在IP视频通话中,即使是在丢包率很小的情况下也会对使用效果造成较为明显的影响.正是由 ...

随机推荐

  1. leaflet结合geoserver利用WFS服务实现图层新增功能(附源码下载)

    前言 leaflet 入门开发系列环境知识点了解: leaflet api文档介绍,详细介绍 leaflet 每个类的函数以及属性等等 leaflet 在线例子 leaflet 插件,leaflet ...

  2. opencv —— inpaint 图像修补、去除指定区域物体

    实现图像修补.物体去除:inpaint 函数 void inpaint(InputArray src, InputArray inpaintMask, OutputArray dst, double ...

  3. The server cannot be started because one or more of the ports are invalid. Open the server editor and correct the invalid ports.

    在eclipse里运行jsp文件最初迟迟没有反应,重启报了这个错误,tomcat的端口设置有问题.需要打开服务器设置一下端口号. 点击Servers,如果没有这一项,按照Window-Show Vie ...

  4. VBA-UTF-8文件的操作

    1.读入UTF-8文件    Dim value As String   Dim vLines As Variant Call ReadCsvUTF_8(vFile.Path, value) vLin ...

  5. 【seata源码学习】001 - seata-server的配置读取和服务注册

    github, seata vergilyn seata-fork seata.io zh-cn docs (PS. 随缘看心情写,坚持不了几天.文章还是写的超级的烂,排版也奇差无比~~~~ 脑壳疼~ ...

  6. Linux学习记录(一):常用命令

    此篇文章为博主在Linux学习过程中的一些记录,记录在此方便查阅. 常用命令总结 ls 显示目录内容 (list directory contents) ls 不显示隐藏的文件和子目录 ls -a 显 ...

  7. 【python基础语法】第6天作业练习题

    ''' 二.作业(每一道题封装成一个函数) 1.输出99乘法表,结果如下:(提示嵌套for循环,格式化输出) 2.有1 2 3 4 这四个数字,设计程序计算能组成多少个互不相同且无重复数字的3位数?分 ...

  8. 50元求解pyqt加载并显示pdf问题

    50块钱求解决pyqt5加载pdf文档并显示,类似briss软件的效果

  9. 剑指offer-面试题32-分行从上到下打印二叉树-二叉树遍历

    /* 题目: 分行按层自上向下打印二叉树. */ /* 思路: 使用队列,将节点压入队列中,再弹出来,压入其左右子节点,循环,直到栈为空. 添加两个计数器,current记录当前行的节点数,next记 ...

  10. 将小账本上传到GitHub

    在假期的时候我已经注册好了用户 https://www.cnblogs.com/1234yyf/p/12312072.html 然后我将我的小账本上传到GitHub上面:一步一步跟着就可以上传成功!! ...