电脑与电脑之间数据是如何传输的(数据封装与解装)
2014-04-19 14:50
267 查看
首先,根据OSL参考模型,网络分为七层,从上到下分别是:应用层,表示层,会话层,传输层,网络层,数据链路层和物理层。举个例子,当你跟别人聊QQ的时候,你发了一句话,你好,这时候数据就已经开始传输了。数据到达传输层的时候,传输层将会对数据进行分段,采用TCP/UDP两种模式,裹上包头,传给网络层。网络层会对数据进行打包,再裹上一层IP包头,包含对方IP地址,然后给数据链路层。数据链路层对数据进行装帧,裹上一层MAC包头(硬件地址),然后给物理层。物理层将数据转为比特流,传输给对方。对方接受后,由物理层将比特流转换为数据,传给数据链路层,数据链路层拆开MAC包头,进行识别,如无误,传给网络层,网络层拆开IP包头,识别IP地址,无误,传给传输层。如有误,自动寻找路径,找不到则将数据包丢弃。传输层拆开TCP/UDP包头,识别,然后传给会话层。会话层建立会话,传给表示层,表示层进行格式转换,传给应用层,应用层提供端口,将数据表示给对方。对方就可以看见你发的“你好”。由此可见,数据之间的传输过程是一个很复杂的过程。
相关文章推荐
- 如何用一根网线实现在两台电脑之间传输数据
- Windows XP SP3环境下的OLE DB Remoting Provider和Jet Provider之间是如何进行数据传输的
- 关于如何在同一台电脑上的两个安卓模拟器之间的socket通信(图片传输)
- 解如何利用 XML 和 JavaScript Object Notation 在 Ajax 客户端和 Java 服务器之间传输数据。
- 解如何利用 XML 和 JavaScript Object Notation 在 Ajax 客户端和 Java 服务器之间传输数据(代码)(Oracle)。
- 进程之间如何通过消息队列传输大量数据
- 如何使用普通网线在两台电脑(笔记本)之间传输大文件
- 如何使用.net实现iPhone和电脑之间的文件传输
- 三层中如何在服务器与客户端之间传输自定义的'Record'类型数据的例子
- 如何使用ssh(scp, winscp)在N950/N9(MeeGo)与电脑之间传输文件
- 如何在两台电脑之间用一根网线传输文件
- 如何使用在两个ftp之间进行数据传输
- AJAX 如何在页面之间传输数据时破译中文乱码
- 两台电脑之间,如何同步数据
- 五 通道之间的数据传输
- 在一个程序中需要用到全局变量(在多个class之间共享数据),请问如何定义具有这种功能的变量?或者是否有其他的方法解决多个class之间的数据共享(尽量简单实现)。 首先应该明确 Java中没有全局变
- 如何实现两窗口之间的数据传递接受
- PXC集群添加新节点如何使用IST方式避免使用SST方式传输数据
- Android:客户端和服务器之间传输数据加密
- 如何在MapReduce的各任务之间共享数据