学习内容:网络、HTTP协议、web服务器
网络
终端、PC、手机、IP电视、空调、冰箱
网络:把各种终端连在一起就形成了网络
拓扑结构分类:
总线型结构、环形结构、星型结构、网状
按覆盖范围分:
局域网LAN(几米到几十米)、域域网(介于LAN与WAN之间)、广域网(几十到几千公里)
按连接介质分:
无线、有线、光纤
按连接协议分:
手机、http
网络主要功能:
资源共享、快速传输信息、提高系统可靠性、易于进行分布式处理、综合信息服务
网络协议
TCP/IP协议族
各层相关协议
网络接口层:各种物理通信网络接口
网络层:IP、ICMP、ARP、RARP
传输层|:TCP、UDP
应用层:HTTP、DNS、FTP、SMTP、TELNET
TCP、IP协议传输示意图
IP地址/IP协议
IP(网络之间互连的协议)
相当于网络中的一个节点,类似于地址,我们称之为IP地址,同一个网络中,IP地址具有唯一性
IPv4网络使用32位地址,已点分十进制表示,如192.168.0.1
127.0.0.1 本机
192.168.*.*
10.*.*.*.:内部局域网
其他:外部广域网
IPv6地址的128位(16个字节)写成8个16位的无符号整数,每个整数用四个十六进制位表示,这些数之间用冒号(:)分开,例如:
3ffe:3201:1401:1280:c8ff:fe4d:db39:1984
windows:ipconfig可以查看本机的IP地址
路由(我想去哪里(目标地址),那就先去哪个关口(gateway))
相关的命令:
netstat
tracert
iptables
route
如何获得IP
静态IP
动态IP DHCP
传输层(TCP、UDP)
TCP
三次握手
发方:我想要发消息→收方:我准备好了,你发吧→发方:那我发了
UDP
UDP没有经过三次握手,知道IP地址就直接发了,所以UDP更加迅速
DNS、DHCP(应用层协议)
DNS(Dpmain Name System 域名解析系统)
在internet上域名和IP地址之间是一一对应的
域名和IP地址之间的转换工作就是域名解析
域名解析需要由专门的域名解析服务器来完成,DNS就是进行域名解析的服务器
DHCP(动态主机配置协议)
1.主机在网络广播,谁可以提供DHCP服务的?
2.DHCP服务器,收到之后,对主机说,我可以的。我的IP是多少,先给你一个临时IP。
3.主机就会给这个DHCP服务器发送请求,请给我一个正式IP吧
4.DHCP服务器,就说,好的,就这个给你,已经正式开始了
5.主机就回复,收到,谢谢了。
FTP(文件传输协议)
用于internet上的控制文件的双向传输
同时,他也是一个应用程序。
基于不同的操作系统由不同的FTp应用程序,而所有这些应用程序都遵循同一种协议一传输文件。
传输模式:
二进制传输模式、字节模式
HTTP协议
Request(Http请求)
Http请求参数
URL:?参数1=参数值&参数2=参数值&...
request Body
多个参数用&隔开;参数以键值对形式出现
请求次数
请求一个网页可能产生多次请求
这取决于HTML有没有使用其他资源
Http缓存
HTML最好不要缓存,而图片可以缓存
动词
Request=动词+URLs
对服务器的状态和数据产生影响时用POST请求,如注册账号,进行支付时
GET与POST区别
GET是获取数据,POST是传送数据给服务器
如果动词是GET,就用URL传参数;如果是POST,就用request Body传
get传输数据较小,一般小于2K,而POST传输数据比较大,没有理论限制
POST相对安全一点,但是POST执行效率比GET要差
在做数据查询时,建议用GET;而对数据做增删改时,建议用POST
如何发送POST请求
浏览器默认使用get请求
HTML form中可以指定get还是post
发送HTTP请求:http://www.atool.org/httptest.php
responce
web服务器
web服务器的作用
web服务器是一个服务器端软件,我们可以将静态的网页部署到web服务器上,web服务器通常只能运行静态网页,应用服务器可以运行动态页面,微博服务器和应用服务器通常会一起使用
常用的web服务器
Apache:可以运行在Linux,Windows,Mac
IIS:是微软的软件,可以运行在Windows电脑上
NGINX:只能运行Linux/Unix