zoukankan      html  css  js  c++  java
  • 网络编程基础【day09】:socket编程入门(一)

    本节内容

    1、OSI七层模型

    2、概述

    3、关系图

    4、代码逻辑图

    5、socket概念

    一、OSI七层模型

    二、概述   

      socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字"向网络发出请求或者应答网络请求。

      socket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,对于文件用【打开】【读写】【关闭】模式来操作。socket就是该模式的一个实现,socket即是一种特殊的文件,一些socket函数就是对其进行的操作(读/写IO、打开、关闭)

    三、关系图

    • file模块是针对某个指定文件进行【打开】【读写】【关闭】
    • socket模块是针对 服务器端 和 客户端Socket 进行【打开】【读写】【关闭】

    四、代码逻辑图

    五、socket概念

    4.1 Socket Families(地址簇)

    1. socket.AF_UNIX unix本机进程间通信 
    2. socket.AF_INET IPV4 
    3. socket.AF_INET6  IPV6

    4.2 Socket Types

    1. socket.SOCK_STREAM  #for tcp
    2. socket.SOCK_DGRAM   #for udp 
    3. socket.SOCK_RAW     #原始套接字,普通的套接字无法处理ICMP、IGMP等网络报文,而SOCK_RAW可以;其次,SOCK_RAW也可以处理特殊的IPv4报文;此外,利用原始套接字,可以通过IP_HDRINCL套接字选项由用户构造IP头。
    4. socket.SOCK_RDM  #是一种可靠的UDP形式,即保证交付数据报但不保证顺序。SOCK_RAM用来提供对原始协议的低级访问,在需要执行某些特殊操作时使用,如发送ICMP报文。SOCK_RAM通常仅限于高级用户或管理员运行的程序使用。
    5. socket.SOCK_SEQPACKET #废弃了
  • 相关阅读:
    mysql存储过程基本函数
    Java多线程程序设计详细解析
    手把手教你写Undo、Redo程序
    mysql存储过程学习总结-操作符
    深入解析ATL第二版(ATL8.0)笔记--(2.3节)
    mysql 5.0存储过程学习总结
    php判断浏览器和语言
    Windows7系统环境安装配置PHP开发环境
    Nginx环境下Php安装
    php学习
  • 原文地址:https://www.cnblogs.com/luoahong/p/7208471.html
Copyright © 2011-2022 走看看