总结二十三

时间:2019-08-06
本文章向大家介绍总结二十三,主要包括总结二十三使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

网络编程

  软件开发架构

    c/s架构(client/server)

      c:客户端

      s:服务器

    b/s架构(browser/server)

      b:浏览器

      s:服务器

    ps:bs架构本质也是cs架构

  服务端:24小时不间断提供服务

  客户端:什么时候想体验服务,就去找服务端请求服务

网络编程的发展史

  任何先进的技术最早都来源于军事

回到过去

  1.早起的电话          电话线

  2.大屁股电脑          网线

  3.笔记本电脑  无线电话    网卡

  

  要想实现远程通信第一个需要具备的条件是:物理连接介质

  人要想实现无障碍交流必须说统一的语言——英语

  计算机与计算机之间想要实现远程通信除了有物理连接介质之外还需要欧一套公共的标准/协议

  OSI协议

    OSI七层协议

      应用层

      表示层

      会话层

      传输层

      网络层

      数据链路层

      物理连接层

    OSI五层协议

      应用层

      传输层

      网络层

      数据链路层

      物理连接层

  1.物理连接层

    基于电信号传输0101010二进制数据

  2.数据链路层

    1.规定的电信号的分组方式

    2.规定了任何一台介入互联网的计算机都必须有一块网卡

      没一块网卡上面都刻有世界上独一无二的编号

      12位16进制数

      前6位是厂商编号

      后6位是流水线编号

      这12位数就是mac地址

    ps:以上两点合称为“以太网协议”

  交换机

  基于以太网协议通信,不能跨局域网通信

  互联网是由N个局域网彼此之间连接而成的

  

  3.网络层

    IP协议,规定了只要接入互联网的计算机都必须有一个IP地址

    IP地址特点:点分十进制

    IP地址最小:0.0.0.0

    IP地址最大:255.255.255.255

    IP地址目前有两个版本:IPV4  IPV6(由于IPV4已经不够表示目前存在的计算机了,所以推出了IPV6版本)

    IP地址是动态匹配的

  4.传输层

    TCP/UDP都是基于端口工作的协议

    端口(port)

    计算机与计算机之间其实是计算机上的应用程序与应用程序之间的通信

    端口:用来唯一表示一台计算机上的某个应用程序

      端口号的范围:0~65535

      注意:0~1024这些都是操作系统默认使用的端口号

      建议:使用8000之后的端口

      MySQL默认端口:3306

      Redis默认端口:6379

      diango默认端口:8000

      flask默认端口:5000

      端口号是动态分配的

        第一次启动qq分配到的是8989

        将qq关闭再次启动端口号可能就变了

    总结:

    IP地址:用来唯一标识接入互联网的一台计算机

    port端口:用来唯一表示一台计算机上的某个应用程序

    IP+port:唯一表示接入互联网的一台计算机上的某个应用程序

    

  5.应用层

    HTTP协议

    FTP协议

  

  TCP协议

    流式协议,可靠协议

    基于TCP协议通信,必须先建立双向通道

    

    问题:TCP协议传输数据之所以可靠的原因就在于有双向通道??? 

    答:错

    

三次握手四次挥手

    

    三次握手:

    

    四次挥手:

    

    

      

原文地址:https://www.cnblogs.com/TZZ1995/p/11311623.html