OSI参考模型和TCP/IP参考模型

一、OSI 参考模型与TCP/IP 的网络分层模型

参考:

1).https://www.cnblogs.com/xdyixia/p/9275246.html

1.OSI和TCP/IP

  物理层(网卡、光猫(光调制解调器))、数据链路层( 网桥、二层交换机(MAC寻址))、网络层(路由器(ip寻址))、传输层(TCP/IP协议)、应用层  

2.OSI模型数据单位:

 

 3.OSI模型各层功能

 

 

 每一层的作用

 物理层:通过媒介传输比特,确定机械及电气规范(比特Bit)

 数据链路层:将比特组装成帧和点到点的传递(帧Frame)

 网络层:负责数据包从源到宿的传递和网际互连(包PackeT)

 传输层:提供端到端的可靠报文传递和错误恢复(段Segment)

 会话层:建立、管理和终止会话(会话协议数据单元SPDU)

 表示层:对数据进行翻译、加密和压缩(表示协议数据单元PPDU)

 应用层:允许访问OSI环境的手段(应用协议数据单元APDU)

 4.通信过程

 4.1 封装报文是从上层到下层(应用层 --> 传输层 --> 网络层 – > 数据链路层 --> 物理层),解封装报文是从下层到上层

  

  

 5.常用协议

 

 

6. TCP/IP面向连接的传输控制协议(传输层)

 

 6.1 3次握手

  

 

 6.2 4次分手

  

 7.HTTP协议

  7.1 http: 超文本传输协议。

  7.2 https:安全的超文本传输协议

    1) SSL: 安全协议 -> TLS(OpenSSL):安全传输层协议

    2) CA证书:证书的签发机构

  7.3 http和https区别

    1)https的端口是443,而http的端口是80,且两者的连接方式不同。http经过tcp三次握手之后便可进行 http的报文传输。而 https在 tcp三次握手之后,还需进行 SSL/TLS 握手 ,才可进入加密报文传输。

    2)http传输是明文的,而https是用ssl进行加密的,https的安全性更高。

    3)https是需要向CA(证书权威机构)申请证书的,而http不需要。

  7.4 加密算法

    1)对称加密算法:即加密和解密使用相同密钥的算法。例如:DES,AES

    2)非对称加密算法:需要两把密钥:公钥和私钥,他们是一对,如果用公钥对数据加密,那么只能用对应的私钥解密。如果用私钥对数据加密,只能用对应的公钥进行解密。因为加密和解密用的是不同的密钥,所以称为非对称加密。例如:RSA,DSA

    3)区别:a) 对称算法加密和解密使用相同密钥 b) 对称加密解密的速度比较快,适合数据比较长时的使用 c) 非对称加密更为安全

 二、网络编程(API都在:java.net包.)

1.socket套接字编程
 源IP地址和目的IP地址以及源端口号和目的端口号的组合称为套接字。其用于标识客户端请求的服务器和服务.
2.网络编程:
    通过使用套接字来达到进程间通信目的的编程就是网络编程.
 进程之间的通信:
      1):在同一台电脑上,A进程和B进程相互通信.
      2):在网络中(外网/内网),A电脑中的aa程序和B电脑中的bb程序相互通信(有网络连接).
为什么需要网络编程:
      1):如果没有网络,只能玩单机游戏.(斗地主,三国杀,CS等)
      2):有了网络,QQ游戏等.
3.网络编程三要素:
      1) IP:标识不同的主机。
      2) 端口:标识不用的服务和进程。默认指tcp端口,有0到65535个(2的16次方)
      3) 协议:规则,数据传递/交互规则.

 

 三、IO模型

  1. 5种IO模型:阻塞IO(BIO)、非阻塞IO(NIO)、IO多路复用(select(Java)、poll(c++)、epoll(c++))、信号驱动的IO和异步IO(AIO)。

   

   2. IO框架netty

 

posted @ 2019-09-07 22:39  遇见神龙  阅读(413)  评论(0编辑  收藏  举报