1.网络模型:
①网络—》进程线程—》web服务器
②mongo–》regex—》项目
③互联网—》网络传输数据
④ISo(国际标转化组织)—》网络体系结果标准OSI模型
- OSI模型——七层模型:
- 应用层:提供用户服务,具体内容和由特定程序规定
- 表示层:提供数据压缩、解压和加密
- 会话层:建立程序级连接,决定什么样的传输服务(软件开发人员主要是前三层)
- 传输层:提供合适的通信服务,流量控制(主要研究:面向连接和面向不连接)
- 网络层:路由选择,网络互联,分组传输
- 链路层:提供链路交换,具体消息的发送
- 物理层:物理硬件,接口
- OSI模型优点:
- 将功能分开,大大降低了数据传输过程中的耦合度,每一部分完成自己的功能,开发更加清晰(编程基本原则:高内聚【单个模块功能尽量单一,不混杂】,低耦合【模块之间尽量减小交互的影响】)
- 实际使用中:使用四层(_应用层(应用层、表示层、会话层集于一体_)、传输层、网络层、物理电路层)、五层模型(TCP/IP模型)
- 将功能分开,大大降低了数据传输过程中的耦合度,每一部分完成自己的功能,开发更加清晰(编程基本原则:高内聚【单个模块功能尽量单一,不混杂】,低耦合【模块之间尽量减小交互的影响】)
- OSI模型——七层模型:
要求:能够顺利说出七层模型、知道如何对应四层、五层模型,简单理解每一层的功能,能理解数据传输过程
2.什么是协议:
- 计算机协议:网络通信中双方必须遵守的规定,包括建立什么连接,如何识别,消息结构等
- 应用层(TFTP协议,文件服务器,HTTP协议,SMTP(邮件窗户协议),DNS协议)
- 传输层(TCP,UDP)提供不同的传输服务
- 网络层:IP协议(寻址)
- 统称为TCP/IP协议簇
- 网络概念:
- 主机:某一台计算机的名称(localhost表示本机,IP地址)
- 获取计算机:打开虚拟机—ipython3-import socket—socket.gethostname()获取主机名,socket.gethostbyname(‘localhost’)通过主机名解析IP—socket.gethostbyname(‘chaochao’)—
- Ip:IPV4:192.168.43.207(点分十进制,三个点分为四个部分,每一部分都是0-255的范围),公网的IP不重复,但是子网可能相同
- IPV6:扩大IP的范围,ip地址更多
- 重点IP:127.0.0.1代表本地的测试IP,0.0.0.0:局域网可用IP,192.168.1.0表示网段(同一个网段表示同一个主机),192.168.1.1 表示网关,192.168.1.255广播地址(2到254自己设置)
- 几个主要命令:ifconfig ,ping www.baidu.com有延迟代表ping通(检测连通性)
- 进入ipython3—import socket—socket.gethostbyaddr(“www.baidu.com")-socket.gethostbyaddr('172.168.43.22')主机名,别名,IP
- socket.inet_aton(“192.168.43.207”)-转化成二进制形式-转换回来socket.inet_ntoa(“上面的结果”)-socket.inet_pton(socket.AF_INEF6,’’)可以转化成IPV6的形式-ntop用法同上,只是第一个参数用socket.AF_INET表示IPV4
- 端口号:是地址的组成部分,在一个系统中区分应用层程序(1–65535,1–255之间是众所周知的端口:256—1023:系统端口,推荐使用10000–50000之间的端口)
- 测试端口:socket.getservbyname(‘mysql’)——socket.getservby(‘ssh’)测试获取应用的端口号
- 子网掩码:和ip配合过滤网段,DNS:域名解析
- 字节序:大端序(高子杰存在地地址),小端序:低字节存在低地址,网络字节序:将子继续发送方式统一
- 计算机协议:网络通信中双方必须遵守的规定,包括建立什么连接,如何识别,消息结构等
-------------本文结束感谢您的阅读-------------
- 本文链接: http://wangzhichao2019.github.io/2019/09/13/Socket1/
- 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
-------------本文结束感谢您的阅读-------------