zoukankan      html  css  js  c++  java
  • 互联网基础

    互联网协议

      在互联网中,为了是各种设备相互之间都可以进行通讯,就需要使用一种大范围内通用的“语言”,这种在窝囊罗设备之间进行通讯的“语言”,称之为互联网协议—TCP/IP协议。

    TCP/IP协议

      TCP/IP协议里包含以下协议:

    分层

      应用层:HTTP,FTP,mDNS,WebSocket,OSC...

      传输层:TCP,UDP

      网络层:IP

      链路层(也称为网络接口层):Ethernet,WiFi

      链路层的主要作用就是实现设备之间的物理连接

       1.链路层:

      ESP8266利用WiFi联网是有三种工作模式:接入点模式(AP)、无线终端模式(STA)、混合模式(STA+AP)。

      接入点模式(Access Point):ESP8266作为类似主机,其他设备通过WiFi连接到ESP8266,从而实现ESP8266与其他设备的通讯,这种模式表,ESP8266可以建立起一个WiFi网络。其他设备通过搜索附近WiFi,通过密码就可以连接到这个WiFi网络上。

      无线终端模式(WiFi Station):ESP8266可以连接到其他的WiFi网络上,类似于手机连接到无线路由器,从而实现两者之间的通讯。

       混合模式:ESP8266可以连接到一个无线WiFi网络上,同样的,ESP8266,也可以创建一个WiFi局域网络,其他设备通过密码连接到ESP8266。

      2.网络层

      IP协议主要为网络设备提供地址功能。

      IP地址

      互联网的最主要功能就是实现信息传输,而信息在互联网中是被打包成一个个数据包,在设备之间传输,而数据包中必须包含收发双方的地址(类似于快递,需要在发货人地址出获得包裹,得知收件人地址后,才能正确的将包裹发送收件人手中)。而这个数据包所使用的就是IP地址。

      IP地址有两个版本:IPv4和IPv6

      IPv4

      192.168.0.3

      由四段10进制数组成,每段都是0~255之间的数,之间用“.”分隔开

      IPv6:为更多的网络设备提过独立的IP地址

      由8组16进制数组成

      2001:db8:1f70:999:de8:7648:3a49:6e8

      网关:连接网络与网络之间的关口

      而路由器创建的是一个局域网,ESP8266,电脑等连接到路由器之后,会被分配到一个“”“独立”的IP地址,而要通过网关连接大其他服务器或者是万维网上时,会被重新分配IP地址,保证在万维网内的IP地址不会重复。

      子网掩码:用来限制IP地址中,那些是属于子网地址,而那些是属于设备自身的地址。

      3.传输层:包含TCP和UDP协议

      TCP协议:“稳”

      *** 保证所有数据都能被接收端接收

        1.数据的传输顺序是不会被打乱的

        2.传输数据若果有损坏则重发受损数据

      TCP应用领域

      电子邮件

      文件传输

      TCP协议的缺点就是由于以稳为主,所以TCP协议的传输速度就不会很快

      UDP协议:相比TCP协议“快”

      *不能保证所有数据都能被接收端接收

      *传输数据一旦损坏,UDP协议将抛弃受损数据

      *有数据损坏不会重新发送受损数据

      因此,UDP协议应用于对网络传输速率比较高,但是对数据准确性不是那么高的产品

      UDP应用领域
      在线语音/视频

      网游

      4.应用层:HTTP协议

      类似于一问一答,通过电脑发出访问网站请求,在万维网服务器接受到请求后会发送一个HTTP响应在发送到我的电脑,从而在浏览器上得到需要的网页信息。

      HTTP请求

      

    请求行

    GET      /         HTTP/1.1

    读取  网站首页         协议版本1.1

    请求头

    Host:www.taichi-maker.com

    请求访问网站首页的信息,且请求使用的HTTP版本号为1.1

    User—Agent:Mozilla/5.0(Windows NT 10.0;WOW64)

    告诉服务器浏览器版本等信息

    Accept:text/html

    告诉服务器浏览器支持哪种网络编程语言

    Accept—Language:zh-CN,zh,q=0.8


    告诉服务器浏览器支持的语言,

    Accept—Encoding:gzip,deflate,sdch

    压缩信息格式

    Connection:Keep—Alive

    继续保持连接

      POST/HTTP/1.1

      Host:www.taichi-maker.com

      意思就是向网站服务器的首页发送信息。

      HTTP1.0中定义了三种请求方法:GET/POST/HEAD。向下兼容

      HTTP1.1中新增了五种请求方法:OPITIONS,PUT,DELETE,TRACE,和CONNECT方法。

      HTTP响应

    状态行

    HTTP/1.1         200                 OK

    版本信息    代码形式表达服务器      

            接收到请求后的状态

            (类似404)  

    HTTP/1.1         404           NOT FOUND

    响应头

    Data:Fri,22 May 2009 06:07:21 GMT

    Content-Type:   text/html;    charset=UTF-8

    内容类型:    响应体内容类型    字符集类型

    响应体

    <html>

    <head></head>

    <body>

    欢迎来到太极创客网站

    </body>

    </html>

  • 相关阅读:
    nefu17
    杭电1051
    杭电1050
    有关异或符号'^'在c++编程中的应用的讲解!!!
    杭电2095
    杭电2094
    关于set容器的简单讲解!!!
    拍拍开发
    收藏框架
    js form.submit() 无效
  • 原文地址:https://www.cnblogs.com/--Destroyer--/p/13290668.html
Copyright © 2011-2022 走看看