网络编程

ぃ、小莉子 提交于 2019-12-06 12:31:59

网络编程

软件开发架构 C/S架构:Client(客户端),Server(服务端)

CS架构:建立在局域网的基础上,需要安装客户端才能使用

  C:客户端,比如微信端,QQ端

  S:服务端,比如服务器

  优点 :

    1.软件的使用稳定

    2.节省网络资源

   缺点 :

    1.安装麻烦,用户体验差

    2.软件的每次更新,用户都需要重新下载或更新版本

 

 

B/S架构:Browser(本质上是个客户端),Server(服务端)

  BS架构:即浏览器和服务器的架构模式,比如手机端微信小程序,不需要下载客户端

  B:浏览器,本质上也是一个客户端,比如百度中的淘宝、镶嵌在浏览器中

  优点:

     1.软件的使用方便

     2.无需跟着软件的更新去下载

   缺点 :

    1.如果网络不稳定,软件的使用就不稳定 比较流行的还是B/S框架,用户体验高

网络编程的发展史

   起源:都源自于军事

   远程通信条件:物理连接介质(电话线,网线,网卡)

   有公共的标准协议:OSI协议

   统一机器语言:二进制

OSI协议

OSI七层协议:

   物理层

     基于电信号传输 011100101 二进制数据,将数据扔给数据链接层

   数据链接层

     以太网协议:

     1.规定电信号的组成方式:获取真实数据 hand:18个字节 前6个:发送者 中间6个:接受者 后6个:数据类型

     2.规定每台电脑必须有一个网卡 每一块网卡都有一串独一无二的12位16进制的数字 max地址 前6位:厂商号 后6位:流水号

     工作的方式 :

      1.单播

       2.广播 :

          缺点 1.广播风暴

             2.只能在局域网内实现通信,无法跨局域实现通信

   网络层 传输数据,实现通讯 IP协议 点分十进制的数字组成

     最小范围:0.0.0.0

     最大范围:255.255.255.255

       IP的版本 IPV4 目前大部分使用

       IPV6 话说能标识世界上的每一粒沙子,未来发展前景

   传输层 主要是软件与软件之间进行通信 基于"端口"实现通信的协议

     TCP协议

     UDP协议

       端口   范围0-65535 建议使用8000以后的端口,避免冲突

            MySQL 默认3306

          Redis 默认 6379

             Django 默认 8000

              flashk 默认5000

   应用层

     别人定制好的,第三方的协议 http协议 ftp协议

   会话层

   表示层

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!