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

news2025/1/12 22:07:00

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

比如说一般场景下,客户机和服务器不在一个局域网,输入的是一个域名而不是IP地址。那么当按下回车后,首先浏览器会通过DNS解析找到我们对应的IP地址,将http报文发送给目标IP地址对应的服务器,之后服务器做出响应,将请求的资源发送给浏览器。

TIP/IP在这当中扮演着重要的作用。

TCP/IP协议族

TCP/IP是一个协议族,通常分不同层次进行开发,每个层次负责不同的通信功能。包含以下四个层次:

1. 链路层,也称作数据链路层或者网络接口层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。它们一起处理与电缆(或其他任何传输媒介)的物理接口细节。

2. 网络层,也称作互联网层,处理分组在网络中的活动,例如分组的选路。网络层协议包括IP协议(网际协议)、ICMP协议(Internet互联网控制报文协议),以及IGMP协议(Internet组管理协议)。

3. 运输层主要为两台主机上的应用程序提供端到端的通信。在TCP/IP协议族中,有两个互不相同的传输协议:TCP(传输控制协议)和UDP(用户数据报协 议)。TCP为两台主机提供高可靠性的数据通信。他所作的工作包括把应用程序交给它的数据分成合适的小块交给下面的网络层,确认接收到的分组,设置发送最 后确认分组的超时时钟等。由于运输层提供了高可靠性的端到端通信,因此应用层可以忽略所有这些细节。而另一方面,UDP则为应用层提供一种非常简单的服 务。它只是把称作数据报的分组从一台主机发送到另一台主机,但并不保证该数据报能到达另一端。任何必须的可靠性必须由应用层来提供。

4. 应用层负责处理特定的应用程序细节。包括Telnet(远程登录)、FTP(文件传输协议)、SMTP(简单邮件传送协议)以及SNMP(简单网络管理协议)等。

今天就给大家分享一份详细讲解TCP/IP协议族的专业书籍,在最新第4版中,内容进行了重新整理,不仅融入了许多技术上的发展变化,而且还增加了几个新的章节和附录。所以,我们接下来就仔细的看看这份硬核TCP/IP文档

第一部分引言和底层技术

回顾了一些基本概念和基础技术。虽然这部分内容不包含在TCP/IP协议中,但TCP/IP协议需要它们的支持~

  • 第1章引言
  • 第⒉章OSI模型和TCP/IP协议族·
  • 第3章底层技术

第二部分网络层

包括第412章,讨论了IPv4编址技术、IPv4协议、所有IPv4协议的辅助协议以及单播和多播路由选择协议

  • 第4章网络层简介
  • 第5章IPv4地址
  • 第6章IP分组的交付和转发
  • 第7章网际协议版本4(IPv4)
  • 第8章地址解析协议(ARP)
  • 第9章网际控制报文协议(ICMP)
  • 第10章移动IP
  • 第11章****单播****路由选择协议(RIP、OSPF和 BGP)
  • 第12章多播和多播路由选择协议

     

     

     

     

第三部分运输层

包括第1316章,第13章介绍了运输层的总体概念,接下来的三章主要全面讨论了三个运输层协议:UDP、TCP和SCTP

  • 第13章运输层简介
  • 第14章用户数据报协议(UDP)
  • 第15章传输控制协议(TCP)
  • 第16章流控制传输协议(SCTP)

     

     

第四部分应用层

包括第1725章,第17章主要介绍了应用层的总体概念,包括客户/服务器模式的编程,然后第1824章全面讨论了七个应用层协议。第25章专门介绍因特网上的多媒体技术~

  • 第17章应用层简介
  • 第18章主机配置: DHCP
  • 第19章域名系统(DNS)
  • 第20章远程登录: TELNET与SSH
  • 第21章文件传送:FTP和TFTP
  • 第22章万维网和HTTP
  • 第23章电子邮件: SMTP、POP、IMAP和MIME
  • 第24章网络管理(SNMP)
  • 第25章多媒体

     

第五部分下一代

包括第26~28章,第26章主要介绍了新一代的I协议、IPv6编址技术、IPv6协议(第27章)和ICMPv6(第28章)。

  • 第26章IPv6 编址
  • 第27章IPv6 协议
  • 第28章ICMPv6

     

     

第六部分安全性

包括第29~30章,讨论了一些不可回避的话题,如加密技术和网络安全(第29章)以及因特网安全(第30章)。

  • 第29章加密术和网络 安全
  • 第30章因特网安全

     

     

第七部分附录

一共含有七个附录,在你阅读本书的过程中也许会用得着它们。

网络层

  • Pv4地址

  • 网际协议版本4(IPv4)

  • 地址解析协议(ARP)

  • 单波路由选择协议(RIP.OSPF 和 BGP)

  • 多播和多播路由选择协议

运输层

  • 用户数据报协议(UDP)

  • 传输控制协议(TCP)

     

  • 流控制传输协议(SCTP)

应用层

  • 域名系统(DNS)

  • 电子邮件: SMTP、POP、IMAP和 MIME

  • 多媒体


    事实上当我们http访问一个地址的时候,从应用层开始向下传递,没经过一层,该层的协议会把上层传递的数据在这个基础上加一个首部,该首部包含了该层协议管理的信息,比如说网络层会打包IP信息,数据链路层打包mac地址。
    通过这种层层打包的方式,最后由物理层传递出去,再有路由器,代理服务器等设备,交给目标计算机。
    目标计算机得到传递过来的数据后,从物理层向上传递,每一层会将该层对应协议负责的首部摘除后再传给上层。最后抵达应用层对应的某个应用程序。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/24636.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ubuntu18.04安装QT5

ubuntu18.04安装QT5 1、说明 QT界面本不应该做为一个很高的知识点,问题是,越来越多的程序实验,需要界面支持,或用界面显得更加方便,因而专门启动该栏目专门介绍QT方法。因为体系比较庞大,因此,需…

在腾讯云 TKE 上部署 EMQX MQTT 服务器集群

云进入以「应用为中心」的云原生阶段,Operator 模式的出现,为 Kubernetes 中的自动化任务创建配置与管理提供了一套行之有效的标准规范。针对大规模分布式物联网 MQTT 消息服务器 EMQX 全生命期管理的自动化管理工具 EMQX Kubernetes Operator&#xff0…

11.数组的分类和定义

1.数组的概念 数组是若干个相同类型 的变量在内存中有序存储的集合。 int a[10];//定义了一个整型的数组a,a是数组的名字,数组中有10个元素,每个元素的类型都是int类型,而且在内存中连续存储。 这十个元素分别是a[0] , a[1] , … …

[附源码]java毕业设计鲜花销售管理系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

同花顺_代码解析_技术指标_Z_2

本文通过对同花顺中现成代码进行解析,用以了解同花顺相关策略设计的思想 目录 ZNZ_CYC ZNZ_CYD ZNZ_CYDD ZNZ_CYDK ZNZ_CYE1 ZNZ_CYF1 ZNZ_CYMR ZNZ_CYOBV ZNZ_CYQKL ZNZ_CYQKR ZNZ_CYR ZNZ_CYS ZNZ_DKBL ZNZ_CYC 指南针成本均线 技术分析非常重视成…

【PinkCAx】可视化工具开发记录与总结

-----------PinkCAx----------- 仅以此篇,记录我的一次可视化软件开发尝试点滴。 简介 PinkCAx是一款采用Python语言编写的,基于QT5VTK架构的三维可视化工具。 该工具目前的功能如下: 基本操作 网格文件的打开与保存(支持STL、P…

Packet Tracer - 确定 DR 和 BDR

地址分配表 设备 接口 IP 地址 子网掩码 RA G0/0 192.168.1.1 255.255.255.0 Lo0 192.168.31.11 255.255.255.255 RB G0/0 192.168.1.2 255.255.255.0 Lo0 192.168.31.22 255.255.255.255 RC G0/0 192.168.1.3 255.255.255.0 Lo0 192.168.31.33 255.25…

sqli-labs/Less-38

这一关有变成了get请求的题目了 我们先判断一下是否属于数字型注入 输入如下 id1 and 12 回显如下 属于字符型 然后判断一下是单引还是双引 输入1 报错了 从报错信息可知 这是一个单引号注入型 我们去佐证一下呗 输入1-- 回显如下 可以 确实是单引号注入型 然后我选择使用…

SeriLog日志框架的应用

C#中当前流行的日志框架有NLog、Log4Net、及SeriLog,在这里我们简单介绍SeriLog日志框架的应用 1、日志基础 (1)、日志等级 (2)、日志接收器 序号 接收器 说明 1 Console 输出到控制台 2 Debug 输出到VS的Debug窗口 3…

TCP沾包问题

TCP流式协议:所谓流式协议,即协议的内容是像流水一样的字节流,内容与内容之间没有明确的分界标志,需要我们人为地去给这些协议划分边界。 我们说 TCP 是流式协议究竟意味着什么? - 云社区 - 腾讯云 (tencent.com) 网…

DJ12-1 8086系列指令系统-1

指令:能够被计算机识别并执行的二进制代码。 指令系统:所有指令的集合。 指令按功能分类:数据传送类、算术运算类、逻辑运算和移位、串操作、控制转移类、处理器控制。 一、8086 指令格式 1. 指令的一般格式 在《计组》里面,我…

计算机网络——第六章笔记(2)

TCP 连接的建立 三次握手建立连接: 1、一方(server)被动地等待一个进来的连接请求 2、另一方(the client)通过发送连接请求,设置一些参数 3、服务器方回发确认应答 4、应答到达请求方,请求方最…

[Spring Cloud] Hystrix三大特性--降级,熔断,隔离

✨✨个人主页:沫洺的主页 📚📚系列专栏: 📖 JavaWeb专栏📖 JavaSE专栏 📖 Java基础专栏📖vue3专栏 📖MyBatis专栏📖Spring专栏📖SpringMVC专栏📖SpringBoot专…

高级测试工程师必备技术:用Git版本控制自动化测试代码

初识Git版本控制 自动化测试代码反复执行,如果借用持续集成工具会提高测试效率,那么需要我们把自动化测试代码发布到正式环境中,这时候用Git版本控制工具高效、稳定、便捷。 分布式版本控制 Git可以把代码仓库完整地镜像下来,有…

Mybatis整合MP

Mybatis整合MP 案例准备: 创建测试表: -- 创建测试表 CREATE TABLE tb_user (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键ID,user_name varchar(20) NOT NULL COMMENT 用户名,password varchar(20) NOT NULL COMMENT 密码,name varchar(30) …

kafka性能指南

kafka性能指南 1.绪论 首先是epoll模型,epoll使其在框架上得以使用mmp和回写高性能。 epoll模型具体可以看linuxIO那一个笔记,这里简单讲一下 首先是epoll模型,模型要求有一组fd由单独线程监控,然后app去干别的事,当…

Arduino开发实例-MAX30100 脉搏血氧仪传感器驱动

MAX30100 脉搏血氧仪传感器驱动 1、MAX30100介绍 MAX30100 脉搏血氧仪和心率传感器是一款基于 I2C 的低功耗即插即用生物识别传感器。 MAX30100 是一款集成脉搏血氧饱和度和心率监测传感器解决方案。 它结合了两个 LED、一个光电探测器、优化的光学器件和低噪声模拟信号处理,…

【蓝桥杯Web】第十四届蓝桥杯(Web 应用开发)模拟赛 2 期 | 精品题解

🧑‍💼 个人简介:一个不甘平庸的平凡人🍬 🖥️ 蓝桥杯专栏:蓝桥杯题解/感悟 🖥️ TS知识总结:十万字TS知识点总结 👉 你的一键三连是我更新的最大动力❤️! &…

降本增效利器?Share Creators智能数字资产管理系统真香!

降本增效似乎是一个持续又永久的话题。尤其在今年, 显得格外的重要~ 疫情不知不觉已经伴随了我们三年,在各行各业都受到了疫情所带来巨大冲击的背景下,降本增效对很多企业来说不再是锦上添花,而可能是一条唯一的出路。 随着市场…

荧光素PEG活性酯,FITC-PEG-NHS,FITC-PEG-SCM,荧光素聚乙二醇琥珀酰亚胺乙酸酯

中文名称:荧光素聚乙二醇琥珀酰亚胺乙酸酯 英文名称:FITC-PEG-NHS,FITC-PEG-SCM 分子量: 1K,2K,3.4K,5K,10K(黄色、橙黄色或者橘黄色固体或者粉末) 端基取代率:≥90% 原料分散系数PDI:≤1.05 纯度:98%…