美文网首页
网络编程

网络编程

作者: _NineSun旭_ | 来源:发表于2019-02-28 20:36 被阅读0次

    网络模型

    OSI参考模型

    7 应用层
    6 表示层
    5 会话层
    4 传输层
    3 网络层
    2 数据链路层
    1 物理层

    TCP/IP参考模型

    4 应用层
    3 传输层
    2 网络层
    1 数据链路层


    IP地址和端口号

    1、ip用于标识网络中的一个通信实体,可以是主机、打印机、路由端口。基于IP协议传输的数据包必须使用IP地址标识,指定目的地址,每个数据包都包括源IP和目的IP。
    2、一个通信实体可以有多个通信程序同时提供网络服务,此时通过端口来区分具体的通信程序。一个通信实体不能有两个通信程序使用同一个端口号。


    TCP和UDP

    1.基于连接和无连接
    2.TCP要求系统资源较多,UDP较少
    3.UDP程序结构简单
    4.流模式(TCP)数据报模式(UDP)
    5.TCP数据准确,UDP数据可能丢失
    6.TCP有数据顺序,UDP不保证

    UDP应用场景

    1.面向数据报方式
    2.网络数据大多为短消息
    3.拥有大量Client
    4.对数据安全要求小
    5.网络负担重,但对相应速度要求高


    Socket套接字

    定义

    将IP地址和端口组合在一起构成唯一能识别的标识符

    原理
    • 通信两端都有Socket
    • 网络通信就是Socket间的通信
    • 数据在两个Socket间通过IO传输
    通信模型
    • 服务端

    建立服务端倾听socket
    等待接受连接请求
    接受请求后创建socket连接
    InputStream
    OutputStream
    关闭socket及相关资源

    • 客户端

    发送创建socket连接请求
    OutputStream
    InputStream
    关闭socket及相关资源

    Socket通信步骤

    1.创建ServerSocket和Socket
    2.打开连接到Socket的输入输出流
    3.按照协议对Socket进行读写操作
    4.关闭输入输出流、关闭Socket

    ServerSocket服务器端

    1.创建ServerSocket对象,绑定监听端口
    2.通过accept()方法监听客户端请求
    3.连接建立后,通过输入流读取客户端发送的请求信息
    4.通过输出流向客户端发送相应信息
    5.关闭相关资源

    相关文章

      网友评论

          本文标题:网络编程

          本文链接:https://www.haomeiwen.com/subject/dhakuqtx.html