通过前面一个案例的分析,基本清楚了网络的通信流程,在http协议中,底层用到了tcp的通信协议,我们接下来给大家简单介绍一下tcp的通信协议原理。

我们如果需要深入学习网络协议,就要先把一些基本的协议的作用和工作过程搞清楚,网络设备还没智能到人脑的程度,它是由人类创造出来的,它的工作过程肯定是符合人类的交流习惯并按照人类的交流习惯来设计的。所以要以人类的思维方式去理解这些协议。

例如,你给别人打电话,不可能电话一接通你就啪啦啪啦地说一大通,万一对方接通电话后因为有事还没来得及倾听呢?这不太符合正常人类的交流习惯。一般是电话接通后,双方会有个交互的过程,会先说一声“你好”,然后对方也回复一声“你好”,双方通过各自一句“你好”明确对方的注意力都放在了电话沟通上,然后你们双方就可以开始交流了,这才是正常的人类交流方式,这个过程体现在计算机网络里就是网络协议!我们通过TCP协议在两台电脑建立网络连接之前要先发数据包进行沟通,沟通后再建立连接,然后才是信息的传输。而UDP协议就类似于我们的校园广播,广播内容已经通过广播站播放出去了,你能不能听到,那就与广播站无关了,正常情况下,不可能你说没注意听然后再让广播站再播放一次广播内容。基于这些思路,我们先去了解下TCP里面关注比较多的握手协议

TCP/IP协议的深入分析相关推荐

  1. HTTP 协议入门 — (TCP/IP协议族、通信传输流、URI 与 URL 的区别、Cookie 状态管理、HTTP 支持的方法、状态码类别、HTTP 首部字段)

    TCP/IP协议族 在介绍 HTTP 协议之前,我们先对 TCP/IP 协议族有个大概的了解,TCP/IP 协议从上到下主要分为应用层.传输层.网络层和数据链路层,各层的主要功能如下表所示: 协议层 ...

  2. TCP/IP协议三次握手与四次握手流程解析

    原文链接地址:http://www.2cto.com/net/201310/251896.html TCP/IP协议三次握手与四次握手流程解析 TCP/IP协议的详细信息参看<TCP/IP协议详 ...

  3. ip设置 kali 重置_在 Windows 系统中如何重置 TCP/IP 协议堆栈修复网络连接问题

    Internet 在 TCP/IP 协议上工作,如果 TCP/IP 协议堆栈在 Windows 或任何其他操作系统(例如 Linux 或 MacOS)中无法正常工作,则您的 Internet 连接会出 ...

  4. TCP/IP 协议理解

    TCP/IP 协议(Transmission Control Protocol / internet Protocol),因特网互联协议,又名网络通讯协议.通俗而言:TCP负责发现传输的问题,一有问题 ...

  5. 网络协议OSI、TCP/IP协议、Socket套接字和第三方AsyncSock的使用等解析

    一.网络协议定义 1.OSI参考模型:全称(Open System Interconnection), 开放式系统互联参考模型.是一个逻辑上的定义,一个规范,它把网络协议从逻辑上分为七层,只要目的是为 ...

  6. Python 14.1 TCP/IP协议简介

    TCP/IP协议简介 虽然大家对现在的互联网很熟悉,但是计算机网络比互联网出现的早得多. 为了把全世界不同的计算机都连起来,就必须规定一套全球通用的协议,为了实现互联网这个目标,互联网协议簇(Inte ...

  7. TCP/IP协议分析

    一;前言 学习过TCP/IP协议的人多有一种感觉,这东西太抽象了,没有什么数据实例,看完不久就忘了.本文将介绍一种直观的学习方法,利用协议分析工具学习TCP/IP,在学习的过程中能直观的看到数据的具体 ...

  8. Linux内核网络栈1.2.13-有关tcp/ip协议的基础入门

    参考资料 <<linux内核网络栈源代码情景分析>> Linux内核网络栈的基础内容 主要分析tcp/ip相关的基本构成,概述了socket的系统调用进入内核的一个流程,并了解 ...

  9. 深入TCP/IP协议1---图解OSI参考模型

    首先我们看一下OIS参考模型各个层的作用 更具体一些图下图 字符集:一个国家或一个民族用到的全部字符的集合,美国用ASCII字符集,UTF8 传输层的功能:可靠传输 .流量控制 .拥塞避免,如果出现丢 ...

最新文章

  1. 漫谈C#之关键字(1)
  2. python中文解释-python注释不能识别中文
  3. poj 3207 2-sat
  4. linux 清理内存的c函数,Linux C函数之内存配置函数
  5. 概率论 一维随机变量
  6. 数据库每日一题 2020.05.08
  7. 关于跨域问题的解决办法
  8. python中的matlibplot_python中如何用matlibplot画时间序列图?
  9. java project 连接hibernate 出错
  10. “暖心”腊八节开启中国年 全民喝粥“讨彩头”
  11. Unity3D游戏开发中相见恨晚的动画插件
  12. py3使用py3Fdfs
  13. python中一元二次方程的判别式_一元二次方程根的判别式知识点
  14. java docx 文档不可编辑、复制
  15. 展辰涂料如何利用K2BPM加强流程管控?
  16. 阿里史上最大规模校招,进大厂的机会来啦!!!
  17. 美术 2.7 Metallic与Speculer流程
  18. 【js-xlsx和file-saver插件】前端html的table导出数据到excel的表格合并显示boder
  19. 统筹规划题:“服装店4个小组15天最多做多少套衣服裤子”的思路
  20. 五大常用算法:分治、动态规划、贪心、回溯和分支界定

热门文章

  1. echarts常用实例
  2. java排序-交换排序-快速排序
  3. Codeforces 918D/917B - MADMAX
  4. 步步为营-19-正则表达式的简单应用
  5. 浅谈ios设计之使用表格UITableVIew设计通讯录的方法
  6. WCF 异常(原创:灰灰虫的家http://hi.baidu.com/grayworm)
  7. 在WPF程序中使用多线程技术
  8. Linux lvs 多端口组成
  9. php数组根据指定列排序
  10. nginx部署下SSE实现心跳功能