码迷,mamicode.com
首页 > 其他好文 > 详细

Socket 的网络编程

时间:2018-12-28 22:17:05      阅读:175      评论:0      收藏:0      [点我收藏+]

标签:end   str   主机地址   color   ==   res   网络编程   mic   接受   

socket 网络编程的服务端:

1) 创建socket 套接字。  

2) 和socket绑定主机地址和端口

3) socket 主动监听端口,看又没有来连接。

4) 当执行到 accept() 时, 被动地等待连接来到。 阻塞。 当连接来到时, 调用, 返回与客户端通信的socket,和客户的addr : ip + 新的通信端口。

5) resv() ,,   send()

 

 

from socket import *
from time import ctime

HOST=127.0.0.1
PORT = 1111
BUFSIZE= 1024
ADDR = (HOST,PORT)

tcpSerSock = socket(AF_INET, SOCK_STREAM)
tcpSerSock.bind(ADDR)
tcpSerSock.listen(5)

while True:
    print waiting for connection...
    tcpCliSock, addr = tcpSerSock.accept()

    print ...connection from:, addr

    while True:
        data = tcpCliSock.recv(BUFSIZE)
        print data
        if not data:
            break
        tcpCliSock.send([%s] %s %(ctime(), data))
        if data == None:
            tcpCliSock.close()

tcpSerSock.close()

 

 

socket 客户端编程:

1) 创建客户端的socket 

 2)   调用 connet( addr ) 连接 服务器addr

 3)  数据的发送和接受。

 

from socket import *
from time import ctime

HOST=127.0.0.1
PORT = 1111
BUFSIZE= 1024
ADDR = (HOST,PORT)

tcpSerSock = socket(AF_INET, SOCK_STREAM)
tcpSerSock.bind(ADDR)
tcpSerSock.listen(1)

while True:
    print waiting for connection...
    tcpCliSock, addr = tcpSerSock.accept()

    print ...connection from:, addr

    while True:
        data = tcpCliSock.recv(BUFSIZE)
        print data
        if not data:
            break
        tcpCliSock.send([%s] %s %(ctime(), data))
        if data == None:
            tcpCliSock.close()

tcpSerSock.close()

 

Socket 的网络编程

标签:end   str   主机地址   color   ==   res   网络编程   mic   接受   

原文地址:https://www.cnblogs.com/lijins/p/10192818.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!