网络
1、vlan、直通线、交叉线
2、网络广播
3、侦听器
4、以太网:EtherChannel
5、广播风暴
6、mac地址漂移
7、BPDU:网桥协议数据单元
8、TCN:拓扑变更通知
9、网络冗余:设备冗余、网络冗余;热备()、冷备(一般冷备、在线冷备)
10、冗余备份:双引擎单设备;双引擎单设备、多链路捆绑;双引擎双设备、核心设备间多链路捆绑、网管备份
11、LACP链路捆绑、二层链路捆绑、三层链路捆绑
12、以太通道的负载均衡原理:基于目标IP或mac地址的负载均衡、基于源IP或mac地址的负载均衡
13、冗余协议:HSRP(热备份路由协议、思科私有协议)、VRRP(虚拟路由冗余协议、IEEE制定)、GLBP(网关负载均衡协议、思科私有协议)
14、HSRP:优先级越大越有限、ip地址越大越优先、同一个HSRP组成员必须在同一个广播域、同一个HSRP组成员必须在同一个子网
CSMA/CD :以太网;CD,冲突检测 ; CS,载波 ; MA,多路访问
Token Ring:令牌环
hub:总线模式 、 交叉点阵列 、 网桥、 单/双工、阻抗
交换机:暂存空间、地址学习(老化)
路由器:广播域
全0:网络地址
全1:广播地址
IANA:国际因特网分配机构
rhcs集群: 可以让我们服务器高可用性、高可靠性、负载均衡、存储共享且经济廉价的一种做法
data
|
LocalPcIP
|
TargetIP
|
LocalPcMac
|
LocalRouteMac
|
前导码
|
路由协议:RIP2,OSPF,EIGRP
可路由协议:IP协议
通信子网:
物理层:物理介质、物理层协议
链路层:数据帧、链路层协议(也有很多),mac机制,arp协议(地址解析协议)解决ip到mac之间的地址转换,rarp协议(反向地址解析协议)解决mac到ip之间的地址转换
网络层:数据包、IP协议,互联网连接
传输层:TCP、UDP,传输
TCP:0-65535;逻辑连接:三次握手、四次断开
UDP:0-65535
资源子网:
会话层
表示层
应用层:ISO/OSI(开放系统互联模型)
OSI网络结构的七层模型
端口:用于标记通信的进程,0-65535
套接字:即socket,就是IP+port
侦听、忙等
协议栈:内核
TCP/IP协议簇
主机名:FQDN
Full Qullified Domain Name 完全合格主机名
IP首部:(下图中有双//的表示可以扩展字节的宽度)
identification:标记
fragment offset:分段偏移,记录IP分片后的偏移量,MF表示分片了,不止一个,DF不分片,无论是否走得通
Time-To-Live:TTL
Protocol:标记包内层协议类型
header checksum:首部校验码
destination:终点
MTU:max translater Unit 最大传输单元,一般默认是1500
Fragment: IP分片;因为MTU大小不同,以最小为准
TCP首部:主要标记进程地址和端口0-65535,叫传输控制协议,有连接的协议,双工。UDP是无连接的。
sequence number:请求号
acknowledgement number:确认号
reserved:预留位
FIN:结束标记;SYN:连接确认 ;RST: 重置;PSH:推送 ;ACK:确认号是否有效,1有效,0无效 ;UGR: 紧急位,紧急指针,1优先传送,0不优先正常传送;
tcp checksum:TCP校验码
配置主机接入TCP/IP网络:
IP/Netmask
路由:
主机路由:host,目标指向单个主机
网络路由:net,目标指向网络
默认路由:default,目标指向所有地址
DNS服务器:
主DNS服务器
备DNS服务器
静态指定
IP/Netmask
动态配置
DHCP服务器
配置IP: ip地址是配置在内核上,显示在网卡上的
用户空间工具:
ifconfig配置
ip
网络设备服务配置文件:
长久有效
GUI/TUI:
用户空间的命令行工具:立即生效,但不会长久有效
ifconfig
iproute2(ip,ss)
网络设备如何表示
内核识别设备:驱动
设备:别名
以太网设备:ethX
eth0、eth1、eth1 ……..
PPP网络设备:pppX
ppp0、ppp1、ppp2 ……
本地回环设备:lo
ifconfig:
ifocnfig 显示所有活动接口的相关信息
ifconfig interface 仅显示指定端口信息
ifconfig Interface Address
ip/mask:
长格式:255.255.0.0
ifconfig interface IP netmask MASK
CIDR:16
ifconfig interface IP/MASK
route(ip route):
route
route -n
DNS服务器指向:
DNS诊断工具:
dig -t -A www.baidu.com //查看www.baidu.com的A记录指向的地址
dig -x IP addr
配置ifcfg-ethX
配置路由:
system-config-network-tui
netstat -a //所有状态的链接
netstat -u //udp的链接
netstat -t //tcp的活动链接
netstat -l //监听状态的连接
netstat -p //连接相关的进程
netstat -n //数字格式显示
netstat -r //显示路由表的,类似于route或ip rpute show
netstat缺点是资源开销太大,已被ss取代
ss -lantu
ethtool命令
ethtool interface:显示设备接口属性
ethtool -S interface:显示设备接口的统计数据
http
套接字:
IP+PORT(IP:port/IP.port)
UnixSock:filesystem 文件系统都在内核上完成
ip报文的总长度不大于65535字节
传输层协议:
面向连接的:tcp
虚连接
无连接的:udp
套接字的连接类型:
tcp套接字
udp套接字
raw套接字
网际协议:IPv4协议 IPv6协议
总体来说互联网都是C/S架构,只是有的有个单独客户端应用,有的是通过浏览器
CIP(CilentIp)+CPORT(ClientPort)+SIP(ServerIP)+SPORT(ServerPort)
通信子网:传输
tcp/ip应用层协议:应用
http\https\smtp\pop\imap\ftp\ldap
http : hypertex transport protocol 超文本传输协议 (文本就是ASICS码或unix的字节码)
html 超文本标记语言
css:层叠样表
动态页面:
程序脚本
客户端
服务器端:CGI(Common Gateway Interface)
URI:Uniform Resource Identifier;统一资源标识符、统一资源命名符
URL:Uniform Resource Locator 统一资源定位符
http://www.baidu.com/img/001.jgp
方法 + 地址 +资源
http协议不同的版本:
MIME机制: (Multipurpose Internet Mail Extensions)多用途互联网邮件扩展类型。
major/minor :主类型/子类型
html:text/html
ascii:text/plain
jpeg:image/jpeg
gif:image/jpeg
QuickTime:video/quicktime 常用的多媒体类型有数百个
http报文:
http事务,一次请求以及与其对应的响应
http方法:get \put\head\post\delete
http请求:request
http请求报文
报文格式:
<metod><request-URL><version>
<headers>
此处回车一次,空一格
此处再回车一次,空一格
<entity-body>
http响应:response
http响应报文
报文格式:
<version><status><reason-phrase>
<headers>
<entity-body>
<method>:请求方法,希望服务器端执行的动作,如get\head\post等
<request-url>:请求的资源,可以是相对路径,也是完整的URL
<version>:协议版本,格式HTTP/<major>.<minor>,如http/1.0
<headers>:HTTP首部
<status>:状态码
<reason-phrase>:原因短语,数字状态码易读信息
<entity-body>:主体部分
http协议:是一种stateless(无状态)协议
一次http事务结束后,连接即行断开
加速方式:
并行请求增加
持久连接
首部:
Name:Value
Content-type:images/gif
分三类:
通用头部
请求首部
响应首部
响应码报文状态码:
1xx:信息性状态码
2xx:成功状态码
200:ok
201:created
3xx:重定向状态码
301:moved permanently 永久重定向。在响应报文中使用首部”location:URL“指定资源现在所处的位置
302:found 临时重定向。在响应报文中使用首部”location:URL”制定临时资源位置
304:Not Modifield,条件请求中使用。缓存中使用。
4xx:客户端类的错误
403:Forbidden,请求被服务器拒绝
404:Not Found,服务器无法找到请求的URL
405:Method Not Allowed,不允许使用此方法请求相应的URL
5xx:服务器类错误
500:Internal Server Error,服务器内部错误
502:Bad Gateway,代理服务器从上游收到了一条伪响应,例如缓存服务器后面的资源没有了
503:Service Unavaiable,服务器此时无法提供服务,但将来可能可用
http首部:
通用首部:请求和响应都可以使用的
请求首部:
响应首部:
实体首部:用于指定实体属性
扩展首部:非标准首部,可能是由开发者创建的,例如X-Forward-For
通用首部:
Connection:定义c/s之间关于请求/响应的有关选项
对于http/1.0,Connection:keep-alive
Via:显示了报文经过的中间节点
Cache-Control:缓存指示
Pragma
请求首部:
Client-Ip:
Host:请求的主机名和端口号,虚拟机环境下用于不同的虚拟主机
Referer:指明了请求当前资源的上一次链接的URL
User-Agent:用户代理,使用什么工具发出的请求
Accept首部:用户标明客户自己更倾向于使用的方式、能力
Accept:指明服务器能发送的媒体类型
Accept-Charset:支持使用的字符集
Accept-Encoding:支持使用的编码方式
Accept-Language:支持使用的自然语言
条件请求首部:
Expect:期望
If-Modifield-Since:是否在指定时间以来修改过改过此资源
If-None-Match:
跟安全相关的请求首部:
Authorization:客户端提交给服务器的认证数据,如账号和密码
Cookie:客户端发送给服务器端身份标识
Cookie2
响应首部:
Age:响应持久时间
Server:向客户端标明服务器程序名称和版本
协商首部:
Accept-Ranges:对当前资源来讲,服务器所能够接受的范围类型
Vary:首部列表,服务器会根据列表中的内容挑选出最适合的版本发送给客户端
跟安全相关的首部:
Set-Cookie:服务器端在第一次请求时发给客户端的令牌
Set-Cookie2
WWW-Authorization:质询,即要求客户端提供账号和密码
实体首部:
Location:资源的新位置
Allow:允许对此资源使用的请求方法
内容首部:
Content-Encoding:编码方式
Content-Language:语言
Content-Length:长度
Content-Location:资源实际位置
Content-Range:资源的范围
Content-Type:内容类型
缓存首部
ETag:实体标签
Expires:过期期限
Last-Modified:上一次的修改时间
http请求的完整过程:
http事务延迟:
串行连接:
并行连接:
持久连接、串行连接:
tcp套接字函数:
http请求方法:
安全的方法:GET\HEAD
POST
PUT\DELETE\OPTIONS\TRACE
扩展方法:LOCK\MKCOL\COPY\MOVE
GET:请求获取一个资源,需要服务器发送
HEAD:跟GET相似,但其不需要服务发送资源而仅仅传回响应首部
POST:支持HTML表单提交,表单中有用户填入的数据,这些数据会发送到服务器,由服务器存储至某位置(例如发送处理程序)
PUT:与GET相反,向服务写入文档;例如发布系统和qq的上传文件
DELETE:请求删除URL指向的资源
OPTIONS:探测服务器端对某资源所支持的请求方法
TRACE:跟踪请求要经过的防火墙、代理或网关等
GUI浏览器:
IE\FireFox\Safari\Chrome\Opera
CLI:
elinks\curl 不能显示图片
WebServer:主要服务于静态页面
IIS
ASF:httpd
nginx
lighttpd
APP Server:可以处理服务器脚本
IIS
tomcat
jetty
resin
web服务器输入、输出结构:
单线程IO结构
多线程IO结构
复用的IO结构:单个线程响应多个请求
复用多线程IO结构:多个线程,每个线程响应多个请求
日志写入缓冲
内核缓存、用户缓存
sendfile()
pageframe