zoukankan      html  css  js  c++  java
  • 为什么要学习网络协议

    ---恢复内容开始---

    1.网络协议为计算机网络中进行数据交换而建立的规则、标准或约定的集合,只有通过协议,计算机才能知道我们想让它做什么。

    2.协议的三要素:(1)语法:这段内容符合一定的规则和格式。

            (2)语义:这段内容代表的什么意思。

            (3)顺序:表示先干什么,后干什么,事情的先后顺序。

    3.只有通过网络协议,才能使一大片的机器互相协作,共同完成一件事。

    4,举例:网络下单过程中,会使用那些网络协议?

      (1) 你先在浏览器中输入http://www.kaola.com,这是一个URL,浏览器不知道怎么去访问,所以它通过一般地址簿协议DNS(更加精致的地址簿协议HTTPDNS)去查找,会得到一个对应的IP地址。

      (2) 知道目标地址后,浏览器开始打包它的请求,普通请求会使用HTTP协议,对于购物的请求往往会加密传输,会使用HTTPS协议,无论是什么协议,里面都会说明“你要买什么,买多少”.DNS,HTTP,HTTPS所在的层,我们成为应用层,经应用层封装后,浏览器会将包交给下一层去完成,通过socket编程实现

      (3) 下一层是运输层,运输层有两种协议,一种是无连接的协议UDP,一种是面向连接的协议TCP。对于支付来说,往往是使用的TCP协议。TCP协议里有两个端口,一个是浏览器监听的端口,一个是电商监听的端口,操作系统往往用过端口来判断它得到的包该进入哪个进程。

      (4) 运输层封包完毕后,将包交给网络层,网络层的协议为IP协议,IP协议里有原IP(浏览器)和目标IP(电商),根据IP判断目标地址是否为本地人,如果是本地人(用的同一个网络号),就直接把包传输到目标IP,如果不是本地人,就需要网关,一般默认的网关地址为192.168.1.1。操作系统如何将IP发给网关呢?通过ARP协议将IP地址发给网关。

      (5) 系统将IP包发给下一层,也就是MAC层,网卡再将包发出去,由于包里有MAC地址,,因为它能到达网关,网关收到包后,会根据自己的知识,通过路由协议判断下一步该怎么走。直走到最后一个网关

      (6) 在最后一个网关通过ARP收到目标服务器的MAC地址,网络包过关后通过MAC地址找到目标服务器。

      (7) 目标服务器发现MAC地址对上了。取下MAC头来,发个操作系统的网络层,发现IP地址也对上了,取下IP头来,然后将其传输给TCP层,在这一层,收到的每个包,都会有一个回复说明收到了,这仅仅是TCP层的一个说明。TCP层有目标的端口号,找到目标正在监听的端口号,

    ---恢复内容结束---

  • 相关阅读:
    APP性能之终端兼容优化分享
    Java反射机制
    语音编码的WAVE文件头格式剖析
    【原创】ASP.NET MVC3开发中遇到问题以及解决方法
    linux常用命令(基础)
    vue中粘贴板clipboard的使用方法
    解决部署zabbix中zabbixagent的状态为灰色现象
    IAR Embedded Workbench for ARM: Porting code from V4 to V5 ( for stm32)
    MSDN帮助文档 "无法显示该网页" 的问题解决方案(转)
    二叉排序树求每个结点平衡因子程序
  • 原文地址:https://www.cnblogs.com/zeminzhang/p/10296731.html
Copyright © 2011-2022 走看看