• 网络编程


    网络编程

    软件开发架构:

        1.应用类(C/S架构):一些像qq,微信等桌面应用。

    C:Client(客户端):是一个需要先安装后才能运行在用户的电脑上,对客户的电脑操作系统环境依赖很大。

    S:Server(服务器端)
             
    2.Web类(B/S架构):一些通过像百度,博客园等通过浏览器就可以直接访问的应用。

    B:Browser(浏览器):也是一种客户端,是一种不用安装程序的客户端。
             
    S:Server(服务器端)

    本质:实现两个程序之间通讯

    网络协议

    不同计算机之间实现无障碍的通信,除了要物理介质外还要由一套共有的标准,这个标准就是互联网协议。

    网络协议:

    **os**七层架构:

    应用层: 各种应用程序和网络之间的接口,其功能是直接向用户提供服务,完成用户希望在网络上完成的各种工作

    ~~表示层:~~对来自应用层的命令和数据进行解释,对各种语法赋予相应的含义,并按照一定的格式传送给会话层。

    ~~会话层:~~负责连接,建立和断开连接的时机,数据的发送顺序。

    传输层:实现软件与软件之间的通信。

    网络层:ip协议可以跨局域网传输并且ip地址生成唯一标识互联网中独一无二的一台机器。

    数据链路层:基于以太网协议的通信方式,无法跨局域通信,会有广播风暴。

    物理层:物理链接介质,传递电信号。

    TCP协议:

    三次握手,四次挥手原则:

    发送数据:

    客户端:向服务器端发送发送数据的请求。

    服务器端:接受到客户端的请求,并返回一个数据,要求客户端在发送的数据之前添加返回的数据。

    客户端:再次发送数据,在数据之前加上服务器端要求添加的数据

     

     

    终止发送数据:

    客户端:当数据发送完毕后要断开链接,发送断开请求给服务器端说,没有数据发送了我可以断开吗。

    服务器端:你发送的请求我已经接收到了,先不要断开等我准备好后断开

    客户端:进入等待状态等待服务器发送断开确认信息

    服务器端:给客户端发送好了你可以断开链接了

    客户端:发送断开信息进入计时等待状态

    服务器端:接收到信息断开链接状态

    客户端:等待时间结束后未接收到回复确认服务器端已关闭断开链接

     

  • 相关阅读:
    Linux系列教程-----Linux安装centos6.8
    laravel 常见操作
    git 拖下laravel 代码后报错 Warning: require(D:WWWlaravelootstrap/../vendor/autoload.php
    phpunit单元测试
    linux环境配置
    window 环境下在虚拟机上安装php环境
    第三方登录---微信(使用laravel插件)
    h5页面在ios机上禁止长按复制
    JS 中根据iframe子页面自动iframe高度
    关于JS解析编历JSON数组(含多维数组)
  • 原文地址:https://www.cnblogs.com/cyfdtz/p/11984740.html
Copyright © 2020-2023  润新知