小白的学习路程

计算机基础知识

IP地址规划
现在常用的是IPV4,公网已经耗尽。中国有2.77亿个公网地址。IPV6还在实验室阶段,未落地。
较大型IP地址规划分有业务地址、物理地址和管理地址。

  1. 业务地址
    需要知道有多少台无线(WiFi)与有线(网卡)设备终端接入,分别分有内部和访客使用的两类地址。
    需服务端接入,分有网管设备、业务系统的网段和监控系统的网段。
    结构:
    内网网络,有服务端和终端。
    外网网络,服务端较少,终端较多,终端分有无线和有线,还有有内部和访客两类。
    监控网络,服务端有数据库、运用端、流媒体;终端分有摄像头、打卡报警之类的。
    网管网络,认证服务器有portal、dotlx ;网管系统有代理服务器、WSUS、堡垒机、ad域控。

  2. 物理地址
    背对背,VRRP HA HSRP,网络设备分布各个地域

  3. 管理地址
    有设备远程,路由器协议router-id、网管到设备。

区域结构整体有各个地方的各个网点。

较小型IP地址规划如学校
可分为宿舍区,办公区,教学区几部分,都包含用户IP,设备管理IP,设备互联IP。然后核心设备有设备管理IP和设备互联IP。

TCP/IP协议
在这里插入图片描述

IP或ICMP(Internet Control Message Protocol,因特网控制报文协议)、TCP或UDP、TELNET或FTP、以及HTTP等都属于TCP/IP的协议,也称TCP/IP为网际协议族。
互联网的协议就是TCP/IP,TCP/IP就是互联网的协议。
TCP/IP是现在Internet主流协议,是一个分层、多协议的通信体系。
IP地址即为机器的物理地址
协议分有应用层(用户空间)、传输层、网络层(内核空间)、数据链路层。

数据链路层
网卡接口的网络驱动程序,处理数据在物理传输媒介上的传输
有ARP协议(Address Resolve Protocol,地址解析协议),RARP协议(Reverse Address Resolve Protocol,逆地址解析协议)
网络层通过IP地址链接主机,首先将IP地址从ARP来广播,数据链路层通过物理地址连接主机
WAN(Wide Area Network,广域网) 通过路由器连接主机。
IP协议(Internet Protocol,因特网协议):根据数据包的目的IP地址决定如何投递信息,使用逐跳(hop by hop)的方式确定通讯路径。

ICMP协议
检测网络连接。区分报文类型:报文差错,回应网络错误;查询报文,查询网络信息。报文进行冗余校验(CRC)以检验报文在传输中是否损坏。

传输层
为两台主机上的应用程序提供端到端(end to end)的通信。
TCP协议(Transmission Control Protocol,传输控制协议):为应用层提供可靠的、面向连接的、基于流(stream)的服务。
UDP协议(User Control Transmission Protocol,用户数据报协议):为应用层提供不可靠、无连接、基于数据报的服务。虽然可以确保发送消息的大小,却不能保证消息一定会到达。
SCTP协议(Stream Control Transmission Protocol,流控制传输协议):为在因特网上传输电话信号而设计的服务。

应用层
浏览器与服务端之间通信所用的协议是HTTP(HuperText Transfer Protocol)。所传输数据主要格式是HTML(HyperText Markup Language)。WWW(万维网)中的HTTP属于OSI应用层的协议,而HTTP属于表示层的协议。

应用层协议
Ping应用程序,利用ICMP报文检测网络连接。
Telnet远程登陆协议,在本地完成远程任务。
OSPF(Open Shortest Path Fist,开放最短路径优先)动态路由更新协议,用于路由器之间的通信。
DNS(Domain Name Service,域名服务)协议,提供机器域名到IP地址的转换功能。
封装。
每一层协议都在上层数据的基础上加上自己的头部信息(尾部信息),实现该层功能
是一套分布式的域名服务系统。每个DNS服务器是存在大量机器域名和IP地址的映射,并且是动态更新的。
域名服务,将机器域名转换陈IP地址。

在这里插入图片描述

TCP协议
为通信双方维持一个连接,并且在内核中存储相关数据。这部分数据中的TCP头部信息和TCP内核缓冲数据一枪构成TCP报文段。
(frame):经过数据链路层封装的数据。
分用:使在帧到达目的主机沿着自底向上依次处理帧中本层负责头部数据,获取所需信息,并最终将处理后的帧交给目标应用程序。

ARP协议
实现任意网络层地址到任意物理层地址的转换。
主机向所在网络广播一个ARP请求,请求包含目标机器网络地址。这个网络是其他机器都会接收到,但只有被请求的目标机器会应答一个ARP请求,其中包含自己的物理地址。

IP服务
IP协议是TCP/IP协议族的动力,它为上层协议提供无状态、无连接、不可靠的服务。
无状态(stateless):无法处理乱序、重复的IP数据报,但是简单、高效。
无连接(connectionless):IP通信双方都不长久地维持对方的任何信息,每次发送数据是都必须指定对方的IP地址。
不可靠:不能保证IP数据报准确地到达接收端,只是尽最大可能。
IP服务的上层协议需要自己实现数据确认、超时重传等机制以达到可靠传输目的。

IP头部结构
IP头部信息出现在每个IP数据报中,用于指定IP通信的源端IP地址、目的端IP地址,指导IP分片和重组,以及指定部分通信行为。

IPv4头部结构

在这里插入图片描述

IPv6头部结构

在这里插入图片描述

IPv6使得地球上每一粒沙子都有一个IP地址。

IP分片
当IP数据报的长度超过帧的MTU时,将被分片传输,在最终的目标机器上才会重新组装。

在这里插入图片描述

IP路由
决定发送数据报到目标机器的路途。

IP模块工作流程

在这里插入图片描述

路由机制
查找路由表中和数据报的目标IP地址完全匹配的主机IP地址。如果找到,就用该路由项,没有则转2。
查找路由表中和数据报的目标IP地址具有相同网络ID的网络IP地址。如果找到,就使用该路由项,没有则转3。
选择默认路由项,通常意味着数据报的下一跳是网关。

IP转发
将不是发送给本机的IP数据交由数据报转发子模块进行转发。
对于允许IP数据报转发的文件系统(主机/路由器),数据报转发子模块将对期望转发的数据报执行以下操作:

  1. 检查数据报头部的TTL值。如果TTL为0,则丢弃该数据报。
  2. 查看数据报头部的严格源路由器选择选项。如果该选项被设置,则检测数据报的目标IP地址是否是本机的某个IP地址。如果不是则返回一个ICMP源站选路失败报文。
  3. 给源端发送一个ICMP重定报文,一告诉它一个更合适的下一跳路由器。
  4. 将TTL值减1。
  5. 处理IP头部选项。
  6. 执行IP分片操作

网页常见状态码
1开头 - 信息提示
这些状态代码表示临时的响应。客户端在收到常规响应之前,应准备接收一个或多个 1xx 响应。
100 - Continue 初始的请求已经接受,客户应当继续发送请求的其余部分。(HTTP 1.1新)
101 - Switching Protocols 服务器将遵从客户的请求转换到另外一种协议(HTTP 1.1新)

2开头 (请求成功)表示成功处理了请求的状态代码。
200 (成功) 服务器已成功处理了请求。 通常,这表示服务器提供了请求的网页。
201 (已创建) 请求成功并且服务器创建了新的资源。
202 (已接受) 服务器已接受请求,但尚未处理。
203 (非授权信息) 服务器已成功处理了请求,但返回的信息可能来自另一来源。
204 (无内容) 服务器成功处理了请求,但没有返回任何内容。
205 (重置内容) 服务器成功处理了请求,但没有返回任何内容。
206 (部分内容) 服务器成功处理了部分 GET 请求。

3开头 (请求被重定向)表示要完成请求,需要进一步操作。 通常,这些状态代码用来重定向。
300 (多种选择) 针对请求,服务器可执行多种操作。 服务器可根据请求者 (user agent) 选择一项操作,或提供操作列表供请求者选择。
301 (永久移动) 请求的网页已永久移动到新位置。 服务器返回此响应(对 GET 或 HEAD 请求的响应)时,会自动将请求者转到新位置。
302 (临时移动) 服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。
303 (查看其他位置) 请求者应当对不同的位置使用单独的 GET 请求来检索响应时,服务器返回此代码。
304 (未修改) 自从上次请求后,请求的网页未修改过。 服务器返回此响应时,不会返回网页内容。
305 (使用代理) 请求者只能使用代理访问请求的网页。 如果服务器返回此响应,还表示请求者应使用代理。
307 (临时重定向) 服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。

4开头 (请求错误)这些状态代码表示请求可能出错,妨碍了服务器的处理。
400 (错误请求) 服务器不理解请求的语法。
401 (未授权) 请求要求身份验证。 对于需要登录的网页,服务器可能返回此响应。
403 (禁止) 服务器拒绝请求。
404 (未找到) 服务器找不到请求的网页。
405 (方法禁用) 禁用请求中指定的方法。
406 (不接受) 无法使用请求的内容特性响应请求的网页。
407 (需要代理授权) 此状态代码与 401(未授权)类似,但指定请求者应当授权使用代理。
408 (请求超时) 服务器等候请求时发生超时。
409 (冲突) 服务器在完成请求时发生冲突。 服务器必须在响应中包含有关冲突的信息。
410 (已删除) 如果请求的资源已永久删除,服务器就会返回此响应。
411 (需要有效长度) 服务器不接受不含有效内容长度标头字段的请求。
412 (未满足前提条件) 服务器未满足请求者在请求中设置的其中一个前提条件。
413 (请求实体过大) 服务器无法处理请求,因为请求实体过大,超出服务器的处理能力。
414 (请求的 URI 过长) 请求的 URI(通常为网址)过长,服务器无法处理。
415 (不支持的媒体类型) 请求的格式不受请求页面的支持。
416 (请求范围不符合要求) 如果页面无法提供请求的范围,则服务器会返回此状态代码。
417 (未满足期望值) 服务器未满足"期望"请求标头字段的要求。

5开头(服务器错误)这些状态代码表示服务器在尝试处理请求时发生内部错误。 这些错误可能是服务器本身的错误,而不是请求出错。
500 (服务器内部错误) 服务器遇到错误,无法完成请求。
501 (尚未实施) 服务器不具备完成请求的功能。 例如,服务器无法识别请求方法时可能会返回此代码。
502 (错误网关) 服务器作为网关或代理,从上游服务器收到无效响应。
503 (服务不可用) 服务器目前无法使用(由于超载或停机维护)。 通常,这只是暂时状态。
504 (网关超时) 服务器作为网关或代理,但是没有及时从上游服务器收到请求。
505 (HTTP 版本不受支持) 服务器不支持请求中所用的 HTTP 协议版本。

Get/Post两种基本请求方法
GET和POST本质上就是TCP链接,并无差别。但是由于HTTP的规定和浏览器/服务器的限制,导致他们在应用过程中体现出一些不同。
GET产生一个TCP数据包;POST产生两个TCP数据包(并不是所有浏览器都会在POST中发送两次包,Firefox就只发送一次)。发一次包的时间和发两次包的时间差别基本可以无视。而在网络环境差的情况下,两次包的TCP在验证数据包完整性上,有非常大的优点。
对于GET方式的请求,浏览器会把http header和data一并发送出去,服务器响应200(返回数据);
而对于POST,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok(返回数据)。
万维网中,用TCP运输数据,HTTP设定了好几个服务类别,有GET, POST, PUT, DELETE等。HTTP规定,当执行GET请求的时候,就会贴上GET的标签(设置method为GET),而且要求把传送的数据放在url中以方便记录。如果是POST请求,就要贴上POST的标签。HTTP只是个行为准则,而TCP才是GET和POST怎么实现的基本。
GET在浏览器回退时是无害的,而POST会再次提交请求。
GET产生的URL地址可以被Bookmark,而POST不可以。
GET请求会被浏览器主动cache,而POST不会,除非手动设置。
GET请求只能进行url编码,而POST支持多种编码方式。
GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。
GET请求在URL中传送的参数是有长度限制的,而POST么有。
对参数的数据类型,GET只接受ASCII字符,而POST没有限制。
GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息。
GET参数通过URL传递,POST放在Request body中。

HTML基础语法
HTML(Hypertext Markup Language,超文本标记语言)。使用HTML编写的文档称为网页,HTML是网页设计的基础语言。目前最新版本是HTML5,使用最广泛的是HTML4.1。
HTML是构成网页文档的主要语言,HTML标签可以标识文字、图形、动画、声音、表格、超链接等网页对象。

HTML文档基本结构
HTML文档一般都包含头=头部区域和主体区域,由、、三个标签组成,每个标签都是成对存在的。
在这里插入图片描述

静态网页:文件拓展名一般为.html或.htm,可直接在浏览器中浏览。
动态网页:文件拓展名为.asp、.aspx、.php或.jsp等,需服务器解析之后,浏览器才能浏览。
元素
我们把匹配的标签对以及它们包围的内容称为元素。即(元素 = 开始标签 + 内容 + 结束标签),如:< a href=“http://hanzhaoxin.cnblogs.com/”>我的博客</ a>。
属性
开始标签中那些以名称/值对的形式出现的内容,我们称之为属性。如上例中:href=“http://hanzhaoxin.cnblogs.com/”。
(href是属性名称,"http://hanzhaoxin.cnblogs.com/"是属性值)。

猜你喜欢

转载自blog.csdn.net/Goodric/article/details/109527196