tcp socket学习

Posted triangle-security

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tcp socket学习相关的知识,希望对你有一定的参考价值。

更新一波学的socket编程,socket还是比较重要的,探测端口,连接服务底层都是socket编程。tcp有server 和 client。client和udp发送差不多。
server端是建立了两个连接,一个是listen监听连接,如果有人连接到了这个端口,那么新创建一个连接,新创建的连接和这个人保持通信。旧的连接可以一直监听。

简单点总结就是Listen-->accept-->recv(1024)-->新连接close()-->旧连接close()

#!/usr/bin/env python
#-*- coding:utf-8 -*-
# @Author  : "你们的饭不好吃"

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

# 绑定端口
tcp_server.bind(("",8888))
# 服务器是8888端口

# 监听端口
tcp_server.listen(127)

print("----------------------1---------------------")

# 接受到电话
new_client,client_addr  = tcp_server.accept()

print("-----------------------2-------------------")
print(client_addr)
recv_data = new_client.recv(1024)
print(recv_data)

new_client.send('hhhh' .encode('utf-8'))

new_client.close()

tcp_server.close()

# 这个视频没有讲详细,但是这个可以告诉给我,tcp是建立两个连接的,一个是先连接到然后等到监听,另一个是开始连接。所以断开的时候,就需要两个都断开了

# tcp_server做为服务端的,是需要先listen,然后accept,最后有一个收的过程recv就更好了。如果只有收没有发,似乎也不太好,所以可以是发送


以上是关于tcp socket学习的主要内容,如果未能解决你的问题,请参考以下文章

Socket网络编程学习笔记

第 11 天:我找到了学习 socket 的正确姿势

tcp socket学习

初识Socket通信:基于TCP和UDP协议学习网络编程

python学习-tcp客户端

Java学习---TCP Socket的学习