1.在源主机上,应用层将一串应用数据流向下传输给传输层

2.传输层将应用数据截流成分组,并加上TCP报头形成TCP段,向下递交给网络层

3.在网络层给TCP段加上包括源主机,目的主机IP地址的IP报头,生成一个IP数据包,并将IP数据包向下递交给链路层

4.链路层在其MAC帧的数据部分装上IP数据包,再加上源主机,目的主机的MAC地址和帧头,并根据其目的的MAC地址,将MAC帧发往目的主机或IP路由器

5.在目的主机,链路层将MAC帧的帧头去掉,并将IP数据包向上递交给网络层

6.网络层检查IP报头,如果报头中校验和计算结果不一致,则丢弃该IP数据包,若校验和计算结果一致,则去掉IP报头,将TCP段向上递交给传输层

7.传输层检查顺序号,判断是否是正确的TCP分组,然后检查TCP报头数据,若正确,则向源主机发送确认信息,若不正确或丢包,则向源主机要求重发信息

8.在目的主机,传输层去掉TCP报头,将排好顺序的分组组成应用数据流送给应用程序,这样目的主机接收到的来自源主机的字节流,就像是直接接收来自源主机的字节流一样

最新文章

  1. JavaScript之数组方法整理
  2. Entity Framework 基于方法的查询语法
  3. dede使用方法---用js让当前导航高亮显示
  4. Spring JdbcTemplate 的使用与学习(转)
  5. jq 选择器
  6. Spark on Yarn 架构解析
  7. 设置lable文本内容的行间距
  8. DOS命令关闭进程
  9. [转]LoadRunner脚本录制常见问题整理
  10. .net面试总结
  11. Nginx安装及配置虚拟主机
  12. 自设table表格,获取内容,并经弹出框的url传参,获取结果显示在弹出框,并加载合计
  13. mysql group by using filesort优化
  14. Linux基础学习笔记3-用户权限
  15. C#常用加密方法
  16. mysql locking
  17. [UE4][Canvas]用C++代码绘制血条(HealthBar)
  18. Nginx 功能
  19. c# action<> func<> 这2个委托怎么用和理解
  20. react canvas

热门文章

  1. 使用vue-cli3搭建项目过程
  2. LeetCode 1060. Missing Element in Sorted Array
  3. LeetCode 708. Insert into a Cyclic Sorted List
  4. (尚023)Vue_案例_交互添加
  5. WinDbg常用命令系列---显示引用的内存(dda、ddp、ddu、dpa、dpp、dpu、dqa、dqp、dqu)
  6. chef test-kitchen Could not load the 'vagrant' driver from the load path 问题解决
  7. 微信小程序轮播组件
  8. vscode快捷键,让你脱离鼠标,敲代码嗖嗖的
  9. JVM内存的划分
  10. 东软HIS系统_打印发票提示“打印机报错!对访问XXX的设置无效”解决办法