zoukankan      html  css  js  c++  java
  • Python_Example_Socket 学习

     Author: 楚格

    2018-11-17   22:45:39

    IDE: Pycharm2018.02   Python 3.7   

    KeyWord :  socket

    Explain:  

    ------------

    --

      1 # coding=utf-8
      2 #---------------------------------
      3 '''
      4 # Author  : chu ge 
      5 # Function: 
      6 #
      7 '''
      8 #---------------------------------
      9 '''
     10 # --------------------------------
     11 # 导入模块 
     12 # 1.系统库
     13 # 2.第三方库
     14 # 3.相关定义库
     15 # --------------------------------
     16 '''
     17 # 1.系统库
     18 import sys
     19 import os
     20 
     21 #2.第三方库
     22 
     23 
     24 
     25 
     26 '''
     27 ============================================================================
     28 #》》》》》》》》》》》》》》
     29 socket 知识聚合
     30 
     31 ----------------------------------------------
     32 
     33 -----------------------
     34 1 基础知识
     35 
     36 -----------------------
     37 1.1 常用的网络协议 
     38 
     39 HTTP(万维网服务)
     40 FTP(文件传输)
     41 SMTP(电子邮件)
     42 
     43 -----------------------
     44 1.1.1 TCP/IP协议族
     45 1.应用层
     46 2.传输层
     47 3.网络层
     48 4.数据链路层
     49 
     50 -----------------------
     51 1.1.2 端口号
     52 
     53 端口是通过端口号来标记,端口号只有整数,范围是0-65535
     54 
     55 端口分配 
     56 well known ports
     57 80端口分配给 HTTP服务
     58 21端口分配给 FTP服务
     59 
     60 动态端口
     61 1024 - 65535
     62 动态分配指系统进程或者应用程序需要进行网络通信时,主机从可用端口号中分配一个供他使用。
     63 netatat -an 查看端口号状态
     64 
     65 端口作用:区别进程 !!!
     66 
     67 -----------------------
     68 1.1.3 IP地址
     69 
     70 地址就是用来标记地点
     71 IP地址:用来在网络中标记一台电脑的一串数字,在本地局域网上是唯一的。
     72 
     73 每个IP地址包括二部分:网络地址和主机地址
     74  类别       网络号  主机号   32
     75 - A 0    --  7  -- 24  -   A 有126个网络,每个网络1677214 个主机
     76 - B 10   -- 14  -- 16  -   B 有16384个网络,每个网络 65534个主机
     77 - C 110  -- 21  --  8  -   C 有2097152个网络,每个网络 254 个主机
     78 - D 1110 --     --     -   D 用于多点广播
     79 - E 11110--     --     -   E 地址保留
     80 
     81 A类: 1.0.0.1   - 126.255.255.254
     82 B类: 128.1.0.1 - 191.255.255.254
     83 C类: 192.0.1.1 - 223.255.255.254
     84 
     85 私有IP:国际规定一部分IP地址用于我们的局域网使用,即私网IP
     86 不在公网中使用,他们的范围:
     87 10.0.0.0    - 10.255.255.255
     88 172.16.0.0  - 172.31.255.255
     89 192.168.0.0 - 192.168.255.255
     90 
     91 
     92 IP地址:回路测试
     93 127.0.0.1 - 127.255.255.255
     94 如,127.0.0.1可以代表本机IP地址,
     95 用http://127.0.0.1 就可以测试本机中配置的Web服务器。
     96 
     97 -----------------------
     98 1.1.4 子网掩码
     99 
    100 子网掩码作用:就是将某个IP地址划分网络地址和主机网部分,子网掩码的设定必须循序一定的规则。
    101 与IP地址相同,子网掩码的长度也就是32位
    102 左边是网络位,用“1”表示
    103 右边是主机位,用“0”表示
    104 IP地址:192.168.1.1 子网掩码 255.255.255.0
    105 
    106 常用IP地址子网掩码:255.255.255.0
    107 
    108 -----------------------
    109 1.2 socket 
    110 
    111 本地的进程间通信(IPC)
    112 * 队列
    113 * 同步(互斥锁,条件变量)
    114 
    115 socket 套接字 是进程间通信的一种方式。
    116 
    117 -----------------------
    118 1.2.1 创建 socket
    119 socket.socket(addressFamily,Type)
    120 
    121 addressFamily: 选择AF_INET(用于Internet进程间通讯)或者
    122                选择AF_UNIX(用于同一台机器间进程通信),选择AF_INET最常用
    123 Type : SOCK_STREAM(流式,TCP协议) 或 SOCK_DGRAM(数据报,UDP协议)
    124 
    125 -----------------------
    126 1.2.2 UDP (速度快,可能会丢数据)
    127 
    128 UDP:用户数据报协议,是一个无连接的简单的面向数据报的运输层协议。
    129 
    130 
    131 
    132 # ============================================================================
    133 '''
    134 # ============================================================================
    135 #   测试专用
    136 # ============================================================================
    137 '''
    138 if __name__ == "__main__":
    View Code

    --

    ---------------

  • 相关阅读:
    SCCM 补丁更新 失误排错一例
    Oracle 远程连接 DB配置 连接命令
    反向代理服务器
    用JMF播放音频 例子
    HTML css兼容
    Java国际化
    JBPM 之介绍,使用
    Nginx内核优化引用
    Nginx 学习
    局域网访问VMware虚拟机中的Ubuntu
  • 原文地址:https://www.cnblogs.com/caochucheng/p/9976072.html
Copyright © 2011-2022 走看看