网络基础 TCP/IP
-
通常使用的网络包括互联网 是在TCP/IP 的基础上运作的
-
HTTP属性他们的一个子集
-
TCP/IP 协议族
-
-
协议
-
-
计算机与网络设备要相互通信 双方必须基于想同的方法
-
比如: 如何探测到通信目标
-
- 由哪一边先发起通信
- 使用哪种语言通信
- 咋样结束通信
-
都需要事先确定
-
不同的硬件 操作系统之间的通信 都需要这一种规则
-
我们把这种规则称之为 协议
-
-
-
TCP/IP的分层管理
-
-
TCP/IP重要的一点就是分层
-
大致可以分为以下4层
-
-
应用层
-
- 决定向用户提供应用服务时通信的活动
- HTTP协议也处于该层
-
传输层
-
-
传输层对应应用层
-
提供处于网络连接中的两台计算机之间的数据传输
-
在传输层有两个性质不同的协议
-
- TCP 传输控制协议
- UDP 用户数据报协议
-
-
网络层(又名网络互连层)
-
- 网络层用来处理网络上流动的数据包
- 数据包就是网络传输的最小数据单位
- 在计算机之间传输时 网络层的作用就是在众多选项中选择一条传输线
-
数据链路层(数据链路层 网络接口层)
-
- 处理连接网络的硬件部分
- 包括控制操作系统 硬件的设备驱动 NIC 光纤
- 硬件上的范畴都在链路层的作用范围内
-
-
利用TCP/IP协议族进行网络通信的时候 会通过分层顺序与对方进行通信
发送端从应用层往下走 接收端会从数据链路层往上走
与HTTP关系密切的协议
-
IP
-
-
负责传输的IP协议
-
IP协议属于网络层
-
IP协议的作用就是把各种数据包传送给对方
-
-
想要传输到对方那里 需要两个条件
-
- IP地址
- MAC地址
-
IP之间的通信依赖于MAC地址 通信一般都不在同一个局域网
-
这样就需要中转才能连接到对方 在进行中转的时候 会利用下一站的中站设备的MAC地址 来搜索下一个中转目标 会采用ARP协议
-
ARP 是一种解析地址的协议 根据通信方的IP地址可以反查出对应的MAC地址
-
-
-
TCP
-
-
提供可靠的字节流服务
-
TCP位于传输层
-
为了方便传输 将大块数据分割成报文段为单位的数据包进行管理
-
TCP协议采用三次握手策略
-
把数据包发送出去以后 不会对以后的情况置之不理 会像对方确认是否成功
-
使用TCP的标志 SYN 和 ACK
-
- 发送端会先发送一个带有SYN的标志数据包给对方 接收端收到后
- 回传一个带有 SYN/ACK 标志的数据包 表示传递确认信息
- 最后发送一个带有ACK 标志的数据包 代表握手结束
- 若在握手的过程中失败了 TCP协议会在以相同的顺序在发送一次
-
-
DNS
-
- DNS服务是和HTTP协议一样位于应用层的协议 提供域名到IP解析服务
- DNS协议提供通过域名查找IP地址 或逆向从IP地址反查域名的服务
URL和URI
-
URL(统一资源定位符)
-
- Web浏览器等访问Web页面时需要输入的网页地址
-
URI(统一资源标识符)
-
-
URI 是 Uniform Resource Identifier
-
-
Uniform
-
- 规定了统一的格式 可方便处理多种不同类型的资源
- 不用根据上下文环境来识别资源指定的访问方式
- 加入新增的协议方案 Http ftp 更容易
-
Resource
-
- 资源的定义是 可标识的任何东西 不仅是文档文件 图像 或服务 等
- 资源不仅是单一的 也可以是多数的集合体
-
Identifier
-
- 表示可标识的对象 也加标识符
-
总结**: URI就是某个协议方案表示资源的定位标识符**
-
-
URI 格式
-
- 绝对格式
-
http://user:pass@www.example.jp:80/dir/index.html?uid=1#ch1
-
-
http 协议方案名
- user:pass 登陆信息
- www.examole.jp 服务器地址
- 80 服务器端口号
- dir/index.html 带层次的文件路径
- uid=1 查询字符串
-
- ch1 片段标识符