网关:
每台机关及都需要正确配置IP地址和子网掩码,根据这两个就可以计算网络号,即 IP&子网掩码 ,如果两台计算机的网络号相同则在同一个网络,则可以直接通信,如果不同则不能直接通信,他们之间必须通过路由器或者交换机网络设备来间接通信,这种设备就是网关
2.路由
网关的作用是连接多个网络,负责把来自一个网络的数据包发送到另一个网络,这个过程就是路由
3.域名
因为直接记忆IP地址比较困难,所以通常使用域名来访问某个特定的服务。域名解析服务器DNS负责把域名翻译成对应的IP来进行访问;在CMD窗口中可以使用nslookup来查看对应域名的IP地址,本机域名是localhost,对应IP地址为127.0.0.1
4.网络模型
- 应用层:提供应用程序之间的通信
- 表示层: 处理数据格式,加密解密等
- 会话层: 负责建立和维护会话
- 传输层: 负责提供端到端的可靠传输
- 网络层: 负责根据目标地址选择路由来传输数据
- 链路层和物理层: 负责把数据进行分片并且真正的通过物理网络传输,例如无线网,光纤等
上层模型是建立在下层模型的基础上的
5.HTTP编程
HTTP 即Hyper Text Transfer Protocol 超文本传输协议
HTTP请求的格式: 请求的格式是固定的,由HTTP Header和HTTP Body 两部分组成,第一行总是 请求方法 路径 HTTP版本,例如 GET / HTTP/1.1,然后后续的每一行都是固定的Header: Value的格式,这就是HTTP Header,服务器依靠某些特定的Header来识别客户端,例如:
*/*
表示任意格式,text/*
表示任意文本,image/png
表示PNG格式的图片;对于POST请求,则需要在header中设置Content-Type表示body的类型,content-type行表示body的长度,这样服务器才可以根据请求的header和Body做出正确的响应
POST /login HTTP/1.1 Host: www.example.com Content-Type: application/x-www-form-urlencoded Content-Length: 30 username=hello&password=123456
POST /login HTTP/1.1 Content-Type: application/json Content-Length: 38 {"username":"bob","password":"123456"}
HTTP响应 也是由Header和Body组成,例如:
HTTP/1.1 200 OK Content-Type: text/html Content-Length: 133251 <!DOCTYPE html> <html><body> <h1>Hello</h1> ...
HTTP协议版本