zoukankan      html  css  js  c++  java
  • 网络协议

    1、C/S B/S
    client<---基于网络通信--->server
    browser<---基于网络通信--->server

    server端必须满足的条件:
    1、稳定运行(网络、硬件、操作系统、服务端应用软件),对外一直提供服务

    2、服务端必须绑定一个固定的地址

    2、什么是互联网
    两大要素
    1、底层的物理连接介质,是为通信铺好道路的
    2、一套统一的通信标准---》互联网通信协议

    互联网协议就是计算机界的英语

    3、自定义协议:
    任何一种通信协议都必须包含两部分:
    1、报头:必须是固定长度
    2、数据




    4、标识地址的方式:
    ip+mac就能标识全世界范围内独一无二的一台计算机
    ip+mac+port就能标识全世界范围内独一无二的一个基于网络通信的应用软件
    url地址:标识全世界范围内独一无二的一个资源

    5、OSI五层协议(了解):
    物理层:主要是基于电器特性发送高低电压(电信号),高电压对应数字1,低电压对应数字0

    数据链路层:数据链路层的功能:定义了电信号的分组方式。
    以太网协议ethernet:一组电信号构成一个数据包,叫做‘帧’
    每一数据帧分成:报头head和数据data两部分

    head包含:(固定18个字节)

    发送者/源地址,6个字节
    接收者/目标地址,6个字节
    数据类型,6个字节
    data包含:(最短46字节,最长1500字节)

    数据包的具体内容
    head长度+data长度=最短64字节,最长1518字节,超过最大限制就分片发送

    地址:head中包含的源和目标地址由来:ethernet规定接入internet的设备都必须具备网卡,
    发送端和接收端的地址便是指网卡的地址,即mac地址

    mac地址:每块网卡出厂时都被烧制上一个世界唯一的mac地址,长度为48位2进制,
    通常由12位16进制数表示(前六位是厂商编号,后六位是流水线号)


    广播:
    有了mac地址,同一网络内的两台主机就可以通信了(一台主机通过arp协议获取另外一台主机的mac地址)

    ethernet采用最原始的方式,广播的方式进行通信,即计算机通信基本靠吼


    网络层:
    网络层功能:引入一套新的地址用来区分不同的广播域/子网,这套地址即网络地址
    IP协议:
    规定网络地址的协议叫ip协议,它定义的地址称之为ip地址,广泛采用的v4版本即ipv4,它规定网络地址由32位2进制表示
    范围0.0.0.0-255.255.255.255
    一个ip地址通常写成四段十进制数,例:172.16.10.1

    ip地址分成两部分:

    网络部分:标识子网
    主机部分:标识主机
    注意:单纯的ip地址段只是标识了ip地址的种类,从网络部分或主机部分都无法辨识一个ip所处的子网

    子网掩码

    所谓”子网掩码”,就是表示子网络特征的一个参数。它在形式上等同于IP地址,也是一个32位二进制数字,
    它的网络部分全部为1,主机部分全部为0


    传输层:
    传输层的由来:网络层的ip帮我们区分子网,以太网层的mac帮我们找到主机,然后大家使用的都是应用程序,你的电脑上可能同时开启qq,暴风影音,等多个应用程序,
    那么我们通过ip和mac找到了一台特定的主机,如何标识这台主机上的应用程序,答案就是端口,端口即应用程序与网卡关联的编号。
    传输层功能:建立端口到端口的通信

    tcp协议:

    可靠传输,TCP数据包没有长度限制,理论上可以无限长,
    但是为了保证网络的效率,通常TCP数据包的长度不会超过IP数据包的长度,以确保单个TCP数据包不必再分割。

    udp协议:

    不可靠传输


    tcp三次握手建立联系和四次挥手断开联系




        




    应用层:
    应用层功能:规定应用程序的数据格式。
    例:TCP协议可以为各种各样的程序传递数据,比如Email、WWW、FTP等等。
    那么,必须有不同协议规定电子邮件、网页、FTP数据的格式,这些应用程序协议就构成了”应用层”。



    6、tcp协议
    三次握手建立连接
    四次挥手断开连接

    1、为何建连接要三次而断开连接却需要四次
    2、为何tcp协议是可靠协议,而udp协议是不可靠协议
    3、tcp协议建立连接与断开连接的状态信息以及表示的意义

    7、半连接池:
    限制的是同一时刻的请求数,而非连接数
  • 相关阅读:
    路飞学城Python-Day4(practise)
    事件绑定和普通事件的区别
    数组中shift(),push(),unshift(),pop()方法
    IE6中常见BUG与相应的解决办法
    apply()与call()的区别
    CSS引入的方式有哪些? link和@import的区别是?
    substring() , slice() and substr()方法
    webpack常用命令总结
    webpack
    从输入URL 到页面加载完成的过程
  • 原文地址:https://www.cnblogs.com/kingyanan/p/9269475.html
Copyright © 2011-2022 走看看