知识点1【网络发展简史】
**网络节点:**路由器和交换机组成
交换机的作用:拓展网络接口
路由:网络通信路径
1、分组交换
分组的目的:
数据量大,不能一次型传输,只能分批次传输,这里的每一批次就是每个分组。
传输单元:网络传输是有限制的。以太网传输单元最大字节数:1500Byte
同一个分组系统中,数据是等分的(每组大小是等长的)
分组的组成:
每个分组都是由首部和数据段组成
首部:存储的是分组在原数据的位置、目的主机和源主机信息。
解释:每个组独立发出,并且要准确地发给目的主机,目的主机收到也要知道是谁发的。主机收到后 需要将分组 组合成一个完整的数据,也需要用到首部内的信息。
2、分组方式的交换方式:存储转发
节点收到分组,先暂时存储下来,再检查其首部,按照首部中目的地址,找到合适的节点转发出去
重组发生在目的主机上,每个节点只是数据的中转站
3、云特网发展史
因特网是从单个ARPA NET发展起来的
TCP/IP协议成为ARPA NET的标准协议
TCP/IP 是协议的统称,它是一个族,并不是单指TCP/IP协议
知识点2【TCP/IP协议】(重要)
每种协议完成不同的功能
网络是分层次来管理的
分层结构(背下来)
背下来每一层,并且要知道每一层是干什么的,这一出现问题可以快速确定是哪一层的错误,并且每层对应的协议是有限的,进而确定哪个协议有问题
1、网络的分层结构:
(一)七层结构
**七层结构:**OSI/RM(Open Standard Interconnection /Reference Model)开放互联参考模型(理论上的标准)
-
七层的解释
**物理层:**网络卡的接口类型,电流强弱等标准。(网卡在第八层)
**数据链路层:**负责完整的帧数据 收发,mac地址的封装和解封装。(设备 到 设备的通信)
帧数据:能够完整独立在网络上传输的数据单元
(在链路层上组好的报文可以直接脱离网卡,在网络上传输)
mac地址:网卡地址
**网络层:**负责IP报文的封装和解封装,IP地址。(主机 到 主机的通信)
每个主机可以有多个IP地址,发数据就是封装IP地址,收数据就是解析IP地址
一个网线连接一个网卡,为了拓展网络接口,就需要用到交换机,而连接这些拓展接口,就需要利用网卡的接口接入,一个网卡可以对应多个系统,就会有一个主机的判断,主机里又可以有多个IP地址
交换机中就会形成MAC地址表
**传输层:**负责端口的封装和解封装(端口 区别的是 系统的进程)(进程到进程的通信)
**会话层:**负责数据的转发,查看数据是否能够到达目的主机,查看网络通信状态
**表示层:**将计算机识别 的二进程数据 转换成 为用户能识别的(图片,音频等)
**应用层:**具体应用程序的协议
(二)四层结构
**四层结构:**TCP/IP模型(事实上的标准)
-
四层的解释
**应用层:**具体应用程序的协议
传输层:负责端口的封装和解封装(端口 区别是 系统的进程)(进程 到 进程的通信)
网络层:负责IP报文的封装和解封装,IP地址。(主机 到 主机的通信)
链路层:负责完整的帧数据 收发(帧数据:完整独立在网上传输的数据),mac地址的封装和解封装(设备 到 设备的通信)
(三)协议
应用层
FTP文件传输协议、Telnet远程登录协议、TFTP:简单文件传送协议,NFS:网络文件系统、HTTP超文本传送协议
传输层
TCP传输控制协议、UDP用户数据报协议
网络层
IP网际协议、ICMP网络控制报文协议、IGMP网络组管理协议
链路层
ARP地址解析协议、RARP逆地址解析协议
2、IP协议(网际协议)
特点:
1、尽最大可能地将数据报文 传送到目的主机
2、IP报文独立传输,不按顺序收发
3、IP报文中要包含 源IP地址 和 目的IP地址
3、TCP报文(传输控制协议)
TCP是可靠的传输层协议(进程和进程的通信)、面向连接的、序号和确认序号、排序检 错、失败重传,面向大文件传输。
如HTTP、FTP、SMTP等
4、UDP协议(用户数据报 协议)
UDP协议是一种不靠谱的传输协议(进程与进程之间的通信),不连接,不排序检错,不冲传,简单应答服务,支持广播、多播
如NFS、NTP(网络时间协议)、DNS(域名解析协议)等
知识点3【地址】
1、mac地址(网卡的地址 链路层)
通过网卡可以将不同的计算机连接起来
mac是标识网卡地址编号(理论上全球唯一),mac地址可以修改,但是一般不修改
如果多人一起修改,会有mac地址不唯一的风险
以太网的mac地址是48位的
window:ipconfig 与 网络属性搭配使用查询 IPv4 IPv6 mac地址
2、IP地址(重要)
IPv4 32位
IPv6 128位 专家说IPv6可以给地球上每一粒沙子分配一个IP
主要介绍IPv4
32位分为 子网ID 和 主机ID
子网ID:IP地址中由子网掩码中 1 覆盖的连续位
主机ID:IP地址中由子网掩码中 0 覆盖的连续位
可见IP和子网掩码是相辅相成的 他们两个需要搭配起来才都有意义
子网ID:标示IP地址在哪一个网段
主机ID:标识IP地址在网段的具体位置
覆盖这里的意思是对应,并不是按位或按位与,让我们举例说明一下
注意
1、IPv4 与 子网掩码ID 配合才能确定 子网ID 和 主机ID
2、掩码的0和1不能相见,必须连续
3、IP地址的分类
IP地址分为A类,B类,C类,D类,E类
我们最常见的是A类,B类,C类
A类地址:默认8bit子网ID,第一位为0 (广域网 国家‐国家之间)
掩码:255.0.0.0
0xxx xxxx.0000 0000.0000 0000.0000 0000
0xxx xxxx.1111 1111.1111 1111.1111 1111
B类地址:默认16bit子网ID,前两位为10 (城域网 城市‐城市之间)
掩码:255.255.0.0
10xx xxxx.xxxx xxxx.0000 0000.0000 0000
10xx xxxx.xxxx xxxx.1111 1111.1111 1111
C类地址:默认24bit子网ID,前三位为110 (局域网)
掩码:255.255.255.0
110x xxxx.xxxx xxxx.xxxx xxxx.0000 0000
110x xxxx.xxxx xxxx.xxxx xxxx.1111 1111
D类地址:前四位为1110,多播地址
E类地址: 前五位为11110,保留为今后使用
注意
**网段个数:**2^(x的个数)
如A类 就是2^7
**主机个数:**2^ (主机ID的位数)- 2
这里为什么减2呢?
是因为全零全一的地址有特殊含义
全零:网段地址
全一:广播地址(如果是A类的广播地址,全世界都能收到)
4、IP地址分类(能否上外网)
共有IP:可直接连接Internet
私有IP:不可直接上Internet,可以借助代理上Internet
私有IP不能直接与共有IP进行通信
5、回环IP地址
回环地址的作用是什么呢?
ping这个地址段(127.0.0.1~127.255.255.254),大家会发现,这个地址段的任意地址都将回环到本地主机上,它的作用是用来测试本机的网卡和IP协议是否正常的
这个地址段不属于任何一个 有类比的地址类,它代表设备的本地入口地址
6、设置IP地址
windows下 图形页面设置 大家都应该尝试过,没有尝试过的可以问一下deepseek 或者其他AI。
这里我详细说一下Linux非图形式修改。
1、设置静态IP
(1)首先需要确定要修改的IP是否被占用,被占用不建议修改:ping一下,看能否打通
(2)ifconfig 查看网络的名称
(3)修改方法:可以修改IP地址 和 子网掩码
ifconfig eth0 目标IP netmask 掩码值
(4)验证是否修改成功 ifconfig
2、动态IP的设置
sudo dhcclient
3、拨号(了解即可)
7、子网掩码
子网掩码(subnet mask)又称网络掩码,地址掩码
是一个32bit的由1和0组成的数值,并且1和0分别连续。
作用
表明IP中的哪些位标识的是主机所在的子网 以及 哪些位标识的是主机号
特点
1、必须结合IP地址一起使用,不能单独存在
2、IP地址中由字码掩码中1 覆盖的连续位 是子网ID;其余的是主机ID
子网掩码的表现形式
192.168.220.0/255.255.255.0
192.168.220.0/24
知识点4【端口】(重要)
1、端口的概述
TCP/IP协议 采用端口标识通信的进程
在系统编程中,是在同一主机操作,我们用进程ID标识进程
在网络编程中,是在不同的主机操作,我们用端口标识进程
本质
端口的本质是 一段缓冲区
特点:(理解记忆)
1、同一系统,一个端口只能对应一个进程
2、同一个端口(端口号相同),在不同的系统中对应不同的进程
3、在同一个系统中,一个进程可以对应多个端口
4、一个进程拥有一个端口后,传输层送到该端口的数据全部被该进程接收,同样,进程送交传输层的数据也通过该端口被送出
不同的主机如何识别端口呢?这就需要引入端口号的概念了。
2、端口号
端口号类似于PID 标识一个进程,在网络编程中,用端口号(port)来标识一个运行的网络程序。
给端口取一个端口号,其他主机(端口号对其他主机无特殊含义,只知道将端口号发送到目标主机)要向目标主机端口发送数据,数据到了目标主机的传输层,目标主机识别端口号,来找到对应的缓冲区。
端口号是传输层可以实现不同主机的进程之间的通信。 IP地址是网络层可以实现主机与主机间的通信
mac地址使链路层可以实现设备到设备间的通信
特点
1、端口号是一个无符号短整(hu)型
2、每个端口都拥有一个端口号
3、TCP,UDP维护各自独有的端口号
这里说一下,我们之前说的一个端口标识一个进程,这句话是针对于同一个协议而言的
如在TCP协议 和UDP协议中,同一端口号(8000),在TCP协议中可以标识进程A,在UDP中标识进程B
4、网络应用程序,至少要由一个端口号
大家结合手机号理解端口
一个人(进程)可以由多个手机号(端口)
一个手机号只能打给一个人
3、端口的分类
知名端口(1~1023)
由互联网数字分配机构(IANA)根据用户需要进行统一分配
解释:由分配机构根据用户需要统一分配 例如:FTP—21,HTTP—80等 服务器通常使用的范围;若强制使用,须加root特权
动态端口(1024~65535)
应用程序通常使用的范围
应用程序可以使用知名端口,但是不建议
结束
代码重在练习!
代码重在练习!
代码重在练习!
今天的分享就到此结束了,希望对你有所帮助,如果你喜欢我的分享,请点赞收藏夹关注,谢谢大家!!!