一、协议族体系结构

  TCP/IP协议族分为四层协议系统,自底向下分别为数据链路层、网络层、传输层、应用层。

  数据链路层常用ARP(地址解析协议)和RARP(逆地址解析协议)。在网络层使用IP寻址,而在数据链路层使用物理地址寻址,ARP就是将IP地址转化为物理地址供数据链路层使用。RARP将物理地址映射为IP地址,适用于某些无盘工作站(不能储存自己的IP)向服务器查询。

  网络层实现数据包的选路和转发。选择中间节点(路由器),确定两台主机之间的通信路径。网络层的核心协议是IP协议,IP协议根据数据包的目的IP地址来选择如何投递:选择合适的下一跳并交给路由器转发。另一个重要协议是ICMP协议,分为两类差错报文和查询报文。

  传输层为两台计算机上的应用程序提供端到端的通信,只关心起始端和目的端不在乎数据包的中转过程。

  其中实线表示各层之间的实体通信,虚线箭头表示逻辑通信线路。

  传输层主要协议有三个:TCP协议、UDP协议和SCTP协议。TCP为应用层提供可靠的、面向连接的和基于流的服务。UPD为应用层提供不可靠、无连接和基于数据报的服务。SCTP是一种较新的传输层协议,为因特网上传输电话信号而设计。

  应用层负责处理应用程序的逻辑。其他层需要保证稳定高效都在内核空间中实现,应用层在用户空间中实现。其中在应用层主要有:ping应用程序,它不是协议。telnet协议是一种远程登陆协议。

二、封装

  应用程序数据在发送到物理网络上之前,将沿着协议栈从上往下依次传递。没层协议都在上层数据的基础上加上自己的头部信息(有时还包含尾部信息),以实现该层的功能。

  经过数据链路层封装的数据称为帧,传输媒介不同,帧的类型也不同。在以太网上传输以太网帧,令牌环网络上传输令牌环帧。以太网帧最大携带1500字节数据,所以过长的IP数据包需要分片。

三、分用

  当帧到达目的主机时,将沿着协议栈自底向上传递。各层协议依次处理帧中本层负责的头部数据,最终将帧交给目标应用程序,这个过程称为分用。

四、ARP协议工作原理

  主机向自己所在的网络广播一个ARP请求,该请求包含目的机器的网络地址。此网络上的其他机器都将收到这个请求,但只有被请求的机器会回应一个ARP应答,其中包含自己的物理地址。(知道他人的IP后通过IP找到他人的物理地址)

五、DNS工作原理

  DNS是一套分布式域名服务系统。每个DNS服务器上存放着大量的机器名和IP地址的映射。DNS查询和应答报文如下:

转载于:https://www.cnblogs.com/lr1402585172/p/10999816.html

第一章 TCP/IP协议族相关推荐

  1. 第一章 TCP/IP 协议

    作者简介:一名云计算网络运维人员.每天分享网络与运维的技术与干货.   座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页​​​​​​ 目录 前言 一.什么是TCP/IP ​编辑 二.什么是协议 1. ...

  2. 程序员必知必会网络传输之TCP/IP协议族,共864页的详解文档让你原地起飞!

    我们现实网络无处不在,我们被庞大的虚拟网络包围,但我们却对它是怎样把我们的信息传递并实现通信的,我们并没有了解过,那么当我们在浏览器中出入一段地址,按下回车这背后都会发生什么? 比如说一般场景下,客户 ...

  3. TCP/IP协议族(第4版)

    链接:https://pan.baidu.com/s/1Pia2by1s83kiVXEyU-dPRg 密码:ruur <世界著名计算机教材精选·TCP/IP协议族(第4版)>可作为大学生和 ...

  4. TCP/IP协议族(第四版)已出,不愧是世界计算机优秀畅销精选书籍

    序言 学习是一种基础性的能力.然而,"吾生也有涯,而知也无涯.",如果学习不注意方法,则会"以有涯随无涯,殆矣". 学习就像吃饭睡觉一样,是人的一种本能,人人都 ...

  5. TCP/IP协议族(一) HTTP简介、请求方法与响应状态码

    接下来想系统的回顾一下TCP/IP协议族的相关东西,当然这些东西大部分是在大学的时候学过的,但是那句话,基础的东西还是要不时的回顾回顾的.接下来的几篇博客都是关于TCP/IP协议族的,本篇博客就先简单 ...

  6. Network 之五 TCP/IP 协议族、工作流程、常用协议格式

      最近工作需要搞网络相关的内容,由于之前对网络了解比较少,因此开始重点学习一下网络相关的各种知识.博文中的有些内容来自于在学习过程中对于一些互联网上我认为的重点知识的记录,如果侵权请联系删除!    ...

  7. TCP/IP协议族之运输层(TCP流量控制和拥塞控制 [1])

    TCP的流量控制 1. 利用滑动窗口实现流量控制 如果发送方把数据发送得过快,接收方可能会来不及接收,这就会造成数据的丢失.所谓流量控制就是让发送方的发送速率不要太快,要让接收方来得及接收. 利用滑动 ...

  8. tcp ip协议_网络通信-TCP/IP协议族简述

    导读:计算机与网络设备要相互通信需要遵守同样的规则.例如,如何找到通信目标.该使用哪种语言通信.怎么结束通信等规则.不同的硬件.操作系统之间的通信都需要遵循同一种规则,这种规则也称为是协议.下面本文主 ...

  9. OSI网络模型与TCP/IP协议族

    OSI七层模型 OSI(Open System Interconnection,开放系统互联)七层网络模型成为开放式系统互联参考模型,是一个把网络通信在逻辑上的定义,也可以理解成为定义了通用的网络通信 ...

最新文章

  1. WinForm禁用窗体自带的关闭功能
  2. Samba与Vsftpd结合在企业中的应用
  3. Fabric--node测试
  4. hdu2037今年暑假不AC
  5. Day38:进程与线程
  6. 『数据库』怎样设计一个数据库
  7. 省选模拟赛记录(越往下越新哦~~~)
  8. 使用poi统计工作职责
  9. 这五个超强PPT技巧,从小白到大神的距离只差这一点!
  10. matlab用mex编译.c文件报错---“重定义;不同的基类型”、“宏重定义”等
  11. python 删除断点_给python 初学者的四条忠告,减少一些没必要的麻烦
  12. 用SqlConnectionStringBuilder修改连接超时时间
  13. Jquery小菜鸟---防止按钮在短时间内被多次点击
  14. 共享库/动态库目录path
  15. linux简介及安装使用
  16. hmailserver mysql密码_mysql+hmailserver+roundcube修改密码
  17. 常数乘以无穷大等于多少_无穷加减一个常数等于多少
  18. malloc,calloc区别
  19. Python 画沿着高对称性的能带图
  20. Unity使用Mysql(添/删/改/查)(保姆级)

热门文章

  1. Primefaces dataTable设置某个cell的样式问题
  2. SAS笔记(6) PROC MEANS和PROC FREQ
  3. 创建一个自己的GitHub,创建自己的开源项目
  4. 在IIS中部署Asp.net Mvc
  5. 读书笔记_Effective_C++_条款十九:设计class犹如设计type
  6. 十三、oracle 数据字典和动态性能视图
  7. hashtable,dictionary 从原理上说说有什么异同,哪个性能高一些
  8. 系统制成docker镜像_docker镜像原理 镜像制作 dockerfile
  9. ajax省市二级联动硬编码,AJAX请求接受硬编码的JSON,但不接受软编码
  10. 阿里云centos 7.6安装mysql_阿里云Centos7上安装MySQL教程