| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> linux网络编程1-基础知识 -> 正文阅读 |
|
[系统运维]linux网络编程1-基础知识 |
目录 1、OSI 七层模型
2、TCP/IP模型3、数据的封装与拆封网络通信中, 数据从上层到下层交付时,要进行封装;同理,当目标主机接收到数据时,数据由下层传递给上层时需要进行拆封。这就是数据的封装与拆封。 4、IP 地址4.1、IP 地址的编址方式IPv4地址以 32 位二进制的形式表示(由 4 个 8 位字段组成); 4.2、点分十进制在人机交互中,通常使用点分十进制方式表示,譬如 192.168.1.1 4.3、网络地址和主机地址IPv4地址中的 32 位实际上包含 2 部分,分别为网络地址和主机地址,可通过子网掩码来确定网络地址和主机地址分别占用多少位。 4.4、IP 地址的分类根据 IP 地址中网络地址和主机地址两部分分别占多少位的不同,将 IP 地址划分为 5 类, 分别为 A、B、 C、 D、 E 五类。 4.4.1、A类地址网络地址取值范围为 0~127, 一共 128 个网络地址。?
4.4.2、B 类地址网络地址第一个字节的取值范围为 128~191。
4.4.3、C类地址网络地址第一个字节的取值范围为192~223。 4.4.4、D类地址D 类 IP 地址是一个专门保留的地址,它并不指向特定的网络,目前这一类地址被用在多播。 4.4.5、E类地址E 类 IP 地址为将来使用保留。? 1)E 类地址范围: 240.0.0.1 ~ 255.255.255.254。 4.5、特殊的 IP 地址4.5.1、直接广播地址向某个网络上所有的主机发送报文。 TCP/IP 规定,主机号各位全部为“1”的 IP 地址用于广播,叫作广播地址。向这个地址发送数据就能让同一网络下的所有主机接收到。 4.5.2、受限广播地址直接广播要求发送方必须广播网络对应的网络号。但有些主机在启动时,往往并不知道本网络的网络号,这时候如果想要向本网络广播,只能采用受限广播地址。 4.5.3、多播地址多播地址用在一对多的通信中,即一个发送者,多个接收者,不论接受者数量的多少,发送者只发送一次数据包。 多播地址属于 D 类地址, D 类地址只能用作目的地址,而不能作为主机中的源地址。 4.5.4、环回地址环回地址是用于网络软件测试以及本机进程之间通信的特殊地址。 把 A 类地址中的127.XXX.XXX.XXX 的所有地址都称为环回地址,主要用来测试网络协议是否工作正常的作用。 4.5.5、0.0.0.0 地址IP 地址 32bit 全为 0 的地址(也就是 0.0.0.0)表示本网络上的本主机,只能用作源地址。 5、TCPTCP是一种面向连接的、可靠的、基于 IP 的传输协议。 5.1、TCP 协议的特性
5.2、建立 TCP 连接(三次握手)??????? 1)第一次握手
|
CLOSED | 表示一个初始状态 |
LISTENING | 表示服务器端的处于监听状态,等待被客户端连接。 |
SYN_SENT | 状态表示客户端已发送 SYN 报文。 |
SYN_REVD | 表示服务器接受到了 SYN 报文。 |
ESTABLISHED | 表示连接已经建立了 |
FIN_WAIT_1 和 FIN_WAIT_2 | 表示等待对方的 FIN 报文。 |
TIME_WAIT | 表示收到了对方的 FIN 报文,并发送出了 ACK 报文,就等 2MSL 后即可回 到 CLOSED 可用状态了。如果 FIN_WAIT_1 状态下,收到了对方同时带 FIN 标志和 ACK 标志的报文时,可以直接进入到 TIME_WAIT 状态,而无须经过 FIN_WAIT_2 状态。 |
CLOSE_WAIT | 表示在等待关闭。 |
LAST_ACK | 它是被动关闭一方在发送 FIN 报文后,最后等待对方的 ACK 报文。当收到 ACK 报 文后,也即可以进入到 CLOSED 状态了 |
UDP是一种无连接、不可靠的协议。
UDP 协议的特点:
1)无连接、 不可靠;
2)尽可能提供交付数据服务,出现差错直接丢弃,无反馈;
3)面向报文,发送方的 UDP 拿到上层数据直接添加个 UDP 首部,然后进行校验后就递交给 IP 层,而接收的一方在接收到 UDP 报文后简单进行校验,然后直接去除数据递交给上层应用;
4)速度快,因为 UDP 协议没有 TCP 协议的握手、确认、窗口、重传、拥塞控制等机制, UDP 是一个无状态的传输协议,所以它在传递数据时非常快,即使在网络拥塞的时候 UDP 也不会降低发送的数据。
端口号用来在一台主机中唯一标识一个能上网的进程。一台主机通常只有一个 IP 地址,但是可能有多个端口号,每个端口号表示一个能上网的进程。一台拥有 IP 地址的主机可以提供许多服务,比如 Web 服务、 FTP 服务、 SMTP 服务等,这些服务都是能够进行网络通信的进程, IP 地址只能区分网络中不同的主机,并不能区分主机中的这些进程, 显然不能只靠 IP 地址, 因此才有了端口号。 通过“IP 地址+端口号”来区分主机不同的进程。
服务 | 端口号 | 说明 |
HTTP 服务 | 80 | 超文本传输协议 |
FTP 服务 | 21 | 文件传输协议, 使得主机间可以共享文件 |
SMTP 服务 | 25 | 简单邮件传输协议,它帮助每台计算机在发送或中转信件时找到下一个目的地。 |
TFTP 服务 | 69 | 简单文件传输协议,主机之间进行简单文件传输 |
SSH 服务 | 22 | 安全外壳协议, 专为远程登录会话和其他网络服务提供安全性的协议 |
Telnet 服务 | 23 | 终端远程登录协议, 它为用户提供了在本地计算机上完成远程主机工作的能力。 |
POP3 服务 | 110 | 邮局协议版本 3,本协议主要用于支持使用客户端远程管理在服务器上的电子邮件 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 13:39:56- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |