TCP-IP详解卷一:协议——阅读总结
该内容适合程序员查看
第1章 概述
1.1 引言
WAN全称是 Wide Area Network,中文名为广域网。
LAN全称是 Local Area Network,中文名为局域网。
1.2分层
ICP/IP协议族通常被认为是一个四层协议系统
分层 | 协议 |
---|---|
应用层 | Telnet、FTP和e-mail |
运输层 | TCP和UDP |
网络层 | IP、ICMP和IGMP |
链路层 | 以太网协议、设备驱动程序和接口卡 |
IP:网际协议
ICMP:Internet互联网控制报文协议
IGMP:Internet组管理协议
TCP:传输控制协议,高可靠。工作内容:把应用程序交给他的数据分成合适的小块交给下面的网络层,确认接收到的分组,设置发送最后确认分组的超时时钟。应用层可以忽略这些细节。采用超时重传、发送和接收端到端确认分组机制。
UDP:用户数据报协议:只是把乘坐数据报的分组从一台主机发送到另一台主机,但并不保证该数据能到达另一端,任何必须的可靠性必须有应用层来提供。
Telnet:远程登录。
FTP:文件传输协议。
SMTP:简单邮件传送协议。
SNMP:简单网络管理协议。
1.3 TCP/IP的分层
DNS:Domain Name System,为域名系统
IFTP:简单文件传送协议
BOOTP:引导程序协议
IGMP:Internet组管理协议
ARP:地址解析协议
RARP:逆地址解析协议
1.4互联网的地址
点分十进制表示法:32位的地址通常写成四个十进制的数,其中每个证书对应一个字节。
类型 | 范围 |
---|---|
A | 0.0.0.0 到 127.255.255.255 |
B | 128.0.0.0 到 192.255.255.255 |
C | 192.0.0.0 到 223.255.255.255 |
D | 224.0.0.0 到 239.255.255.255 |
D | 240.0.0.0 到 247.255.255.255 |
单播地址:目的为单个主机
广播地址:目的端为给定网络上的所有主机
多播地址:目的端为同一组内的所有主机
1.5 域名系统
域名系统是一个分布的数据库,由它来提供IP地址主机名之间的映射信息。
1.6 封装
协议域:IP在首部中存入一个长度为8bit的数值成为协议域。1表示ICMP协议,2表示IGMP协议,6表示TCP协议,17表示UDP协议。
类型域:类似协议域,以太网的帧首部也有一个16bit的帧类型域。
1.7 分用
当目的主机收到以太网数据帧时,数据就开始由协议栈中由底向上升,同时去掉各协议加上的报文首部
协议ICMP和IGMP定位一直是很棘手,把它们与IP放在同一层上,那是因为事实上他们是IP的附属协议。又把它们放在IP层面上,因为ICMP和IGMP报文都被封装在IP数据报中。
ARP和RARP都有各自的以太网数据帧类型,和IP数据报一样。又可以把ARP作为以太网设备驱动程序的一部分,放在IP层下面是合理的。
1.8 客户-服务器模型
重复型服务器交互步骤:
I1.等待一个客户请求的到来
I2.处理客户请求。
I3.发送响应给发送请求的客户。
I4.发挥I1步
重复型服务i其主要问题发生在I2状态,这个时候它不能为其他客户机提供服务。
并发型服务器交互步骤
C1.等待一个客户请求的到来。
C2.启动一个新的服务器来处理这个客户的请求。在这期间可能生成一个新的进程、任务或线程,并依赖底层操作系统的支持。
C3.返回C1。
一般来说,TCP服务器是并发的,UDP服务器是重复的。
1.9 端口号
知名端口号:TCP/IP实现来说,FTP的TCP端口号是21,Telnet的TCP端口号是23,TFTP的UDP端口号是69。任何TCP/IP实现所提供的服务都用知名1~1023之间的端口号。
知名端口号介于1到255之间,256到1023之间的端口号通常是由Unix系统占用,IANA分配机构管理1~1023之间所有的端口号。
Telnet 23端口,采用TCP/IP标准
Rlogin 513端口 Unix系统设计
查看Telnet服务器和域名系统的端口号,可以使用下面的命令
grep telnet /etc/services
grep domain /etc/services
1.10 标准化过程
由四个小组控制以及拟定标准TCP/IP协议族。
1)Internet协会(ISOC,Internet Society)
2)Internet体系结构委员会(IBA,Internet Architecture Board)
3)Internet工程专门小组(IETF,Internet Engineering Task Force)
子组织Internet工程指导小组(IESG,Internet Engineering Steering Group)
4)Internet妍就专门小组(IRTF,Internet Research Task Force)
IRTF和IETF都隶属于IBA。文献[Crocker 1993]提供相加详细的Internet内部标准化进程。
1.11 RFC
所有关于Internet的正式标准都以RFC(Request for Comment)文档出版。
获取RFC方式:
电子邮件:(尝试过,没有用)
To:rfc-info@ISI.EDU
Subject:getting rfcs
help:ways_to_get_rfcs
FTP从Internet上获取
推荐 https://ftp.sjtu.edu.cn/pub/rfc/
相关文章:

TCP-IP详解卷一:协议——阅读总结
该内容适合程序员查看 第1章 概述 1.1 引言 WAN全称是 Wide Area Network,中文名为广域网。 LAN全称是 Local Area Network,中文名为局域网。 1.2分层 ICP/IP协议族通常被认为是一个四层协议系统 分层协议应用层Telnet、FTP和e-mail运输层TCP和UDP网…...

【带源码】如何开发一个视频打赏,付费观看视频的系统?
【带源码】如何开发一个视频打赏,付费观看视频的系统?开发指南来了 最近非常火爆的视频打赏系统,有用户端,管理端,代理端 风口来了,系统部署简单,需要详细部署教程的可以留下评论哦!…...

Linux--进程的概念(一)
目录 一、冯诺依曼体系结构二、操作系统2.1 什么是操作系统2.2 操作系统的意义 三、进程3.1 进程的基本概念3.2 描述进程——PCB3.3 进程和程序的区别3.4 task_struct-PCB的一种3.5 task_struct的内容分类 四、如何查看进程4.1 通过系统文件查看进程4.2 通过ps指令查看进程 五、…...

大话设计模式——15.观察者模式(Observer Pattern)
简介 也称发布订阅模式(Publish/Subscribe),定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新 UML图: 应用场景: 消息通知组件&#x…...

MySQL 主从复制部署(8.0)
什么是主从数据库 主从数据库是一种数据库架构模式,通常用于提高数据库的性能、可用性和可伸缩性。 它包括两种类型的数据库服务器: 1)主数据库(Master):主数据库是读写数据的主要数据库服务器。所有写操…...

大话设计模式——16.命令模式(Command Pattern)
简介 请求以命令的形式包裹在对象中,并传给调用对象。调用对象寻找可以处理该命令的对象进行执行。命令模式是一种特殊的策略模式,体现多个策略执行的问题,而不是选择的问题 UML图 应用场景 界面选择、键盘、按钮、事件操作都类似命令模式 …...

react17+18 中 setState是同步还是异步更新
在类组件中使用setState,在函数式组件中使用hooks的useState。 setstate目录 1. 类组件1.1 react 17版本1.2 react 18版本 2、函数式组件 1. 类组件 1.1 react 17版本 参考内容:第十一篇:setState 到底是同步的,还是异步的&…...

Unity框架,ET框架8.1版本的打包流程记录
目录 打包代码前置1.必须要安装Visusal Studio 2022的组件,如下图,必须都要进行安装,不然会在代码重构的时候报错,丢失SDK。Rider的版本必须2023及以上 步骤一、使用Rider编辑器打开项目后进行重构项目步骤二、使用HybirdCLR生成A…...
windows访问wsl中的docker
1、启动windows路由转发功能: 找到任务管理器 --》服务–》打开服务–》 ROUTing and Remote Access 2、关闭wsl中linux的防火墙 3、查看docker系统和linux系统的ip和网关 以下面为例 # docker系统 eth0: flags4163<UP,BROADCAST,RUNNING,MULTICAST> mtu…...
golang主要优缺点
优点 1)采用协程机制,可以很方便的支持高并发,性能还不错。 2)非常易于使用,产出效率很高。 缺点 也是协程机制。程序中一切皆协程,并且自己做了协程调度机制,而不是传统的 线程机制。导致需…...

浅谈Redis和一些指令
浅浅谈一谈Redis的客户端 Redis客户端 Redis也是一个客户端/服务端结构的程序。 MySQL也是一个客户端/服务端结构的程序。 Redis的客户端也有多种形态 1.自带命令行客户端 redis-cli 2.图形化界面的客户端(桌面程序,web程序) 像这样的图形…...

AI大模型探索之路-应用篇1:Langchain框架概述—快速构建大模型应用
目录 一、什么是LangChain? 二、LangChain解决了哪些问题? 三、LangChain总体架构 四、代码实践样例 总结 一、什么是LangChain? 为大模型应用提供简便之道。 LangChain,专为构建庞大的语言模型应用程序设计的框架࿰…...

Google Chrome 常用设置
Google Chrome 常用设置 References 转至网页顶部 快捷键:Home 转至内容设置 chrome://settings/content 清除浏览数据 历史记录 -> 清除浏览数据 关于 Chrome 设置 -> 关于 Chrome chrome://settings/help References [1] Yongqiang Cheng, https:/…...

如何提高旋转花键运行稳定性?
现代化精密仪器设备中,精密仪器的稳定工作性能对于生产效率和产品质量至关重要,运行效率和精度是常见问题。旋转花键作为机械传动系统中的重要组成部分,其稳定性也是直接影响到机械装配的质量和使用寿命,那么我们应该如何提升旋转…...
每日一题 第八十七期 洛谷 [蓝桥杯 2018 省 AB] 全球变暖
[蓝桥杯 2018 省 AB] 全球变暖 题目描述 你有一张某海域 N N N \times N NN 像素的照片,. 表示海洋、 # 表示陆地,如下所示: ....... .##.... .##.... ....##. ..####. ...###. .......其中 “上下左右” 四个方向上连在一起的一片陆地组…...
AI技术创业有哪些机会?
文章目录 ✍探索AI技术创业的机会与挑战💎引言💎AI技术的快速发展与应用💎🌹AI技术创业的机会与方向🌹1. 行业解决方案🌹2. 智能产品和服务🌹3. 教育和培训 💎AI技术创业的挑战与应对…...
TensorFlow学习之:基础概念和操作
TensorFlow简介 TensorFlow是一个开源的深度学习框架,由Google的研究团队Google Brain Team开发,并在2015年发布。它是基于DistBelief,Google之前的一个深度学习项目,但被重新设计以便更灵活、更强大、更适应于研究和生产。 历史…...

最新在线工具箱网站系统源码
内容目录 一、详细介绍二、效果展示1.部分代码2.效果图展示 三、学习资料下载 一、详细介绍 系统内置高达72种站长工具、开发工具、娱乐工具等功能。此系统支持本地调用API,同时还自带免费API接口, 是一个多功能性工具程序,支持后台管理、上…...
c# InvokeRequested delegate解决线程访问界面
说明 界面操作的代码应该写在界面(Form/Dialog)里 方法定义 private void Method1(string s) {...... }delegate定义 private delegate void Method1Delegate(string s);界面调用代码 private void op(){string sText"hello";if (this.In…...
使用 Web Workers 作为setInterval的替代方案
使用 Web Workers 作为setInterval的替代方案 在 Vue 项目中,为了避免 setInterval 在标签页非激活状态下的不准确问题,我们可以使用 Web Workers 作为一个替代方案 Web Worker 介绍: Web Workers : 浏览器后台为网页运行的一个小助手&…...

JavaScript 中的 ES|QL:利用 Apache Arrow 工具
作者:来自 Elastic Jeffrey Rengifo 学习如何将 ES|QL 与 JavaScript 的 Apache Arrow 客户端工具一起使用。 想获得 Elastic 认证吗?了解下一期 Elasticsearch Engineer 培训的时间吧! Elasticsearch 拥有众多新功能,助你为自己…...
Cesium1.95中高性能加载1500个点
一、基本方式: 图标使用.png比.svg性能要好 <template><div id"cesiumContainer"></div><div class"toolbar"><button id"resetButton">重新生成点</button><span id"countDisplay&qu…...

渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止
<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet: https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...

分布式增量爬虫实现方案
之前我们在讨论的是分布式爬虫如何实现增量爬取。增量爬虫的目标是只爬取新产生或发生变化的页面,避免重复抓取,以节省资源和时间。 在分布式环境下,增量爬虫的实现需要考虑多个爬虫节点之间的协调和去重。 另一种思路:将增量判…...
Xen Server服务器释放磁盘空间
disk.sh #!/bin/bashcd /run/sr-mount/e54f0646-ae11-0457-b64f-eba4673b824c # 全部虚拟机物理磁盘文件存储 a$(ls -l | awk {print $NF} | cut -d. -f1) # 使用中的虚拟机物理磁盘文件 b$(xe vm-disk-list --multiple | grep uuid | awk {print $NF})printf "%s\n"…...

代码规范和架构【立芯理论一】(2025.06.08)
1、代码规范的目标 代码简洁精炼、美观,可持续性好高效率高复用,可移植性好高内聚,低耦合没有冗余规范性,代码有规可循,可以看出自己当时的思考过程特殊排版,特殊语法,特殊指令,必须…...
MySQL 索引底层结构揭秘:B-Tree 与 B+Tree 的区别与应用
文章目录 一、背景知识:什么是 B-Tree 和 BTree? B-Tree(平衡多路查找树) BTree(B-Tree 的变种) 二、结构对比:一张图看懂 三、为什么 MySQL InnoDB 选择 BTree? 1. 范围查询更快 2…...
【FTP】ftp文件传输会丢包吗?批量几百个文件传输,有一些文件没有传输完整,如何解决?
FTP(File Transfer Protocol)本身是一个基于 TCP 的协议,理论上不会丢包。但 FTP 文件传输过程中仍可能出现文件不完整、丢失或损坏的情况,主要原因包括: ✅ 一、FTP传输可能“丢包”或文件不完整的原因 原因描述网络…...

负载均衡器》》LVS、Nginx、HAproxy 区别
虚拟主机 先4,后7...
电脑桌面太单调,用Python写一个桌面小宠物应用。
下面是一个使用Python创建的简单桌面小宠物应用。这个小宠物会在桌面上游荡,可以响应鼠标点击,并且有简单的动画效果。 import tkinter as tk import random import time from PIL import Image, ImageTk import os import sysclass DesktopPet:def __i…...