计算机网络
-
链路层
-
MAC (Media Access Control Address) 媒体访问控制地址,局域网地址 (LAN Address)
LAN(Local Area Network)
-
ARP (Address Resolution Protocol) 地址解析协议
根据 IP 地址获取物理地址的一个 TCP/IP 协议,主机发送信息时将包含目标 IP 地址的 ARP 请求广播道网络上的所有主机,并接收返回消息,以此确定目标的物理地址
-
RARP (Reverse Address Resolution Protocol) 反向地址转换协议,允许局域网的物理机器从网关服务器的 ARP 表或者缓存上请求其 IP 地址
-
-
网络层
- IP 协议 (Internet Protocol) 网际协议
- ICMP 协议 (Internet Control Message Protocol) Internet 控制报文协议
- IGMP 协议 (Internet Group Management Protocol) Internet 组管理协议
-
传输层
- TCP (Transmission Control Protocol) 传输控制协议,一种面向连接的、可靠的、基于字节流的传输层通信协议
- UDP (User Datagram Protocol) 用户数据报协议,一种无连接的传输层协议
-
应用层
-
HTTP (Hyper Text Transfer Protocol) 超文本传输协议,Internet 应用最为广泛的一种网络传输协议,所有的WWW文件都必须遵守这个标准
80 端口
-
HTTPS (Hyper Text Transfer Protocol Secure) 超文本传输安全协议
443 端口
-
FTP (File Transfer Protocol) 文件传输协议,是用于在网络上进行文件传输的一套标准协议,使用客户/服务器模式
21 端口
-
SSH (Secure Shell) 安全外壳协议,为远程登录会话和其他网络服务提供安全性的协议
22 端口
-
POP3 (Post Office Protocol - Version 3) 邮局协议版本 3,主要用于支持使用客户端远程管理在服务器上的电子邮件
110 端口
-
DNS (Domain Name System) 域名系统,是互联网的一项服务,它作为将域名和 IP 地址映射的一个分布式数据库,能够使人更方便地访问互联网
OSI(Open System Interconnection)开放系统互联 模型 五层
应用层 设备: 网关 应用层 表示层 设备: 网关 传输层 会话层 设备: 网关 网络层 传输层 设备: 网关 数据链路层 网络层 设备: 路由器 物理层 数据链路层 设备: 交换机 网卡 网桥 物理层 设备: 集线器 中继器 电缆 发送器 接收器
-
-
小技巧 (ICMP)
- ping www.baidu.com (ping -t www.baidu.com 一直发送)
- tracert命令用来跟踪从本机到目的地址所经过的路由 tracert www.baidu.com3
- talnet www.baidu.com 80 查看端口是否可用
-
Http 和 Https 的区别
- HTTP的URL以http://开头,而HTTPS的URL以https://开头
- HTTP标准端口是80,而HTTPS的标准端口是443
- 在OSI网络模型中,HTTP工作于应用层,而HTTPS的安全传输机制 工作在传输层
- HTTP无法加密,HTTPS对传输的数据进行加密
- HTTP无需证书,而HTTPS需要CA(Certificate Authority)证书颁发机构wosign(沃通)的颁发的SSL证书
-
HTTP 详解
-
HTTP协议是无状态的,对于事务处理没有记以能力,可以使用Cookie来解决无状态问题
-
HTTP请求报文包含四部分
- 请求行:包含请求方法,URL,HTTP协议及版本
- 请求头:客户端的信息
- 空行
- 请求体:客户端发送的数据
-
请求头属性
-
Accept: 告诉服务器,客户端接收什么类型的响应
-
Cookie: 传递到服务器
获取请求所关联的HttpSession,其内部的机理是通过读取请求报文头中Cookie属性的JSESSIONID的值,在服务端的一个会话Map中,根据这个JSESSIONID获取对应的HttpSession的对象。
-
Referer: 表示这个请求时从哪个URL过来的,防盗链时用得到
-
Cache-Control: 对缓存进行控制,比如一个请求希望响应返回的内容在客户端缓存一年,或者不缓存,Cache-Control: no-cache,表示不缓存
-
Accept-Encoding: 指定浏览器可以支持的web服务器返回的内容压缩编码类型
-
Accept-Language: 浏览器支持的语言
-
Connection: 表示是否需要持久连接
-
Host: 指定请求的服务器的域名和端口
-
User-Agent: 用户代理: 简称UA,内容包含发出请求的用户信息,使得服务器能识别客户端使用的操作系统及版本、浏览器及版本等等
-
在POST提交时请求头参数携带 Content-Type: application/x-www-form-urlencoded; charset=UTF-8
-
-
HTTP响应报文包含三部分
- 状态行:HTTP协议版本,响应状态代码,状态代码文本描述
- 消息报头
- 响应正文
-
响应状态码
-
1xx 消息,一般是告诉客户端,请求已经收到了,正在处理,别急…
-
2xx 处理成功,一般表示:请求收悉、我明白你要的、请求已受理、已经处理完成等信息.
-
3xx 重定向到其它地方。它让客户端再发起一个请求以完成整个处理。
-
4xx 处理发生错误,责任在客户端,如客户端的请求一个不存在的资源,客户端未被授权,禁止访问等。
-
5xx 处理发生错误,责任在服务端,如服务端抛出异常,路由出错,HTTP版本不支持等。
-
200 OK:客户端请求成功。
-
400 Bad Request:客户端请求有语法错误,不能被服务器所理解。
-
401 Unauthorized:请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用。
-
403 Forbidden:服务器收到请求,但是拒绝提供服务。
-
404 Not Found:请求资源不存在,举个例子:输入了错误的URL。
-
500 Internal Server Error:服务器发生不可预期的错误。
-
503 Server Unavailable:服务器当前不能处理客户端的请求,一段时间后可能恢复正常,举个例子:HTTP/1.1 200 OK(CRLF)
-
303 See Other
我把你redirect到其它的页面,目标的URL通过响应报文头的Location告诉你
-
304 Not Modified
告诉客户端,你请求的这个资源至你上次取得后,并没有更改,你直接用你本地的缓存吧,我很忙哦,你能不能少来烦我啊!
-
-
HTTP响应报文头属性
- Content-Length: 返回数据内容长度
- Content-Type: application/json 服务器返回数据类型
- Cache-Control: max-age=3600 响应输出到客户端,服务器通过此属性告诉客户端如何控制响应内容的缓存
- Location: http://www.baidu.com 重定向要重新发起的请求地址
- Set-Cookie: 服务器设置客户端的Cookie
-