zoukankan      html  css  js  c++  java
  • python高级编程——网络编程(一)

    计算机网络基础  

      概念:计算机网络就是把各个计算机连接到一起,让网络中的计算机可以互相通信。网络编程就是如何在程序中实现两台计算机的通信。而网络编程就是开发计算机网络应用程序

    计算机的通信协议

      概念:计算机处理最多的东西就是数据,通信的话就是要传输数据,在传输数据的过程中需要遵循计算机通信协议(TCP/IP)

    端口

    分类:

    物理端口:交换机、路由器、集线器的端口

    逻辑端口:

    TCP/IP协议端口,端口号的范围从0到65535

    保留端口:HTTP 80,FTP 20/21,Telnet 23,SMTP 25,DNS 53,MYSQL 3306

    动态端口:范围是从1024到65535

    动态分配:当系统进程需要使用网络通信时,向主机申请一个端口,主机从可用的端口中分配 一个供它使用,当进程关闭时,同时释放所占用的端口

    查看端口状态:netstat -an

    IP地址

    IP地址用来在网络中标记一台电脑的一串数字,比如192.168.1.1;在本地局 域网上是惟一的。 

    IP地址是一个32位的二进制数,通常被分割为4个“8位二进制数”(也就是4 个字节) 

    IP地址通常用“点分十进制”表示成(a.b.c.d)的形式,其中,a,b,c,d都是 0~255之间的十进制整数。

    socket套接字

    socket简介

      本地的进程间通信(IPC)有很多种方式 

        管道、消息队列、共享内存、Socket等

        在本地可以通过进程PID来唯一标识一个进程,但是在网络中这是行不通的 

      Socket是进程间通信的一种方式,它与其他进程间通信的一个主要不同是:

        它能实现不同主机间的进程间通信,我们网络上各种各样的服务大多都是基于 Socket 来完成通信的 

        随着TCP/IP协议的流行,Socket编程已经成为实现网络应用程序的基础。 

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

    socket的创建和类别

    Python中使用socket模块的函数socket:

    socket.socket(AddressFamily, Type)

    socket.socket 创建并返回一个 socket对象

    Address Family:可以选择 AF_INET(用于 Internet 进程间通信) 或者 AF_UNIX( 用于同一台机器进程间通信),实际工作中常用AF_INET

    Type:套接字类型,可以是 SOCK_STREAM(流式套接字,主要用于 TCP 协议)或者 SOCK_DGRAM(数据报套接字,主要用于 UDP 协议) 

    创建 TCP SOCKET

    import socket 
    
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

    创建 UDP SOCKET

    import socket
    
    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

     

  • 相关阅读:
    mysql数据库主从同步复制原理
    NoSQL
    Mysqldump参数大全
    MySQL Show命令的使用
    学习shell脚本之前的基础知识
    详解MySQL大表优化方案
    sql索引的优缺点
    [C#] 取得每月第一天和最後一天、某月总天数
    Easy ui DateBox 控件格式化显示操作
    StudioStyle 使用 厌倦了默认的Visutal Studio样式了,到这里找一个酷的试试
  • 原文地址:https://www.cnblogs.com/aitiknowledge/p/11433064.html
Copyright © 2011-2022 走看看