跳转至

03 覆盖全球的大网

计算机网络入门、网络协议、命令行

从零开始的网络

你突然穿越回古代,如何搭建起网络呢?

  1. 扯一条连接主要城市的电报线
  2. 培训发报/解码员,送至各个城市
  3. 培训协议解析员,送至各个城市
  4. 建立各部司,培训业务处理员,送至各个城市

问题

在通信的过程中不断改进网络!

传输层

  1. 如何发送中文呢?编码!
  2. 解决发送冲突,以及发报员上厕所?协议!
  3. 跨区域通信?地址!
  4. 京城如何知道该转发给谁?路由!
  5. 发送人是谁?源地址!
  6. 有更多的城市要加进来,地址不够用了,协议不能随便改?二级地址!
  7. 二级地址如何与一级地址通信?路由转发!

应用层

  1. 子节点如何互相通信?WX!
  2. 一个地址如何为多个应用提供服务?端口!

协议

为网络传输制定规则

传输层协议

  1. 将所有中文编成码表,使用 12 位表示一个汉字 = 一共能表示 4096 个汉字
  2. 发送连续 3 声 ,然后等待 3s,对方回复一声 ,则开始发送
  3. 在正文前加入 4 位地址编码,四位分别为东南西北
  4. 连接两个及以上节点的城市叫做路由节点,他需要维护一张路由表,内部记录地址对应的下一个路由节点
  5. 在正文前再次加入发送人地址,四位分别为东南西北
  6. 地址不够用,由路由节点在正文前再次加入四位地址
  7. 路由节点互相转发是不增加头地址,普通节点由路由节点转发时需要增加头地址

应用层协议

  1. 制定用于沟通传输的 WX 协议
  2. 为每个地址安排 65536 个工位,每个工位只能完成特定工作,可以让各大部门派人占用

人事安排

每一个连接网络的节点,都相当于一个服务器

岗位 功能
发报/解码员 网卡
工作人员 应用程序

真实的网络

传输层

不要看到术语就蒙,这些字母代表的就是定义好的网络协议

  1. 网卡层协议 (二进制编码)
  2. 网卡层协议
  3. IP 层协议
  4. TCP 层协议
  5. IP 层协议
  6. IP 层协议
  7. TCP 层协议

应用层

  1. 应用协议
  2. TCP 协议 (端口)

端口

端口概念是协议层面的,硬件上不存在端口概念

为了接收到的信息能发给正确的应用程序,应用需要占用电脑的端口

  • 网页默认为 80 端口
  • Live Server:5500 端口

DNS 协议

让大家不用记住 IP 地址也能通过网址来访问网页

HTTP 协议

用于传输网页的应用层协议

请求头

  • Get 方法:数据写在 URL 中
  • Post 方法:数据写在 Header 中

响应头

  • 状态码:请求响应的状态
  • User-Agent:用户标识

命令行

在没有图形化界面的时代,人们是怎样使用电脑的呢?

走进命令行的世界!

  1. 点击键盘上的 Win
  2. 输入 CMD
  3. 弹出以下窗口
  4. 或在 VSCode 中按 Ctrl+`
Microsoft Windows [版本 10.0.19043.1110]
(c) Microsoft Corporation。保留所有权利。

C:\Users\xxx>

常用命令

# 网络相关
# IP地址长什么样子 DNS地址是哪里
ipconfig # 本机网络信息

# 查看网址对应的IP地址
ping www.baidu.com # 判断网络连接情况

# 访问服务器中间经过了哪些路由
tracert www.baidu.com

# 列出所有目录及文件
dir # Directory 的缩写

# 切换目录
cd # Change Directory 的缩写
cd . # 切换到当前目录(啥也没干
cd .. # 切换到上级目录
d: # 切换到d盘
cd d:\demo\xxx # 切换到d盘的一个目录

# 创建文件夹
mkdir xxx

# 删除文件夹
rd /s /q xxx

# 删除文件
del xxx

# 好玩的命令
shutdown -s # 关机
shutdown -s -t 30 # 30s后关机
shutdown -a # 终止关机

课后作业

  1. 查看常用网站的请求及响应头内容
  2. 试试 CMD 的其他命令

推荐阅读

十分钟搞懂 HTTP 协议

Windows 基础 - 上

Windows 基础 - 下

CMD 常用命令总结