VxWorks网络编程实例:TCP服务器与客户端通信

作者:佚名 上传时间:2023-11-27 运行软件:Wind River Systems 软件版本:VxWorks 7 版权申诉

本示例演示如何使用VxWorks实现一个简单的TCP服务器与客户端通信。服务器在指定端口监听连接,客户端连接后发送消息,服务器接收并回复。涉及套接字创建、绑定、监听、接受、发送和接收等基本网络编程操作。

#include <stdio.h>
#include <sockLib.h>
#include <inetLib.h>

void tcpServer() {
    int listenSock, clientSock;
    struct sockaddr_in serverAddr, clientAddr;
    int clientAddrLen = sizeof(clientAddr);
    char buffer[1024];

    // 创建套接字
    if ((listenSock = socket(AF_INET, SOCK_STREAM, 0)) == ERROR) {
        perror("socket creation error");
        return;
    }

    // 配置服务器地址结构
    bzero((char *)&serverAddr, sizeof(serverAddr));
    serverAddr.sin_family = AF_INET;
    serverAddr.sin_port = htons(1234);
    serverAddr.sin_addr.s_addr = htonl(INADDR_ANY);

    // 绑定套接字
    if (bind(listenSock, (struct sockaddr *)&serverAddr, sizeof(serverAddr)) == ERROR) {
        perror("bind error");
        close(listenSock);
        return;
    }

    // 监听连接
    if (listen(listenSock, 5) == ERROR) {
        perror("listen error");
        close(listenSock);
        return;
    }

    printf("等待客户端连接...\n");

    // 接受连接
    if ((clientSock = accept(listenSock, (struct sockaddr *)&clientAddr, &clientAddrLen)) == ERROR) {
        perror("accept error");
        close(listenSock);
        return;
    }

    printf("客户端连接成功,开始通信。\n");

    // 接收消息
    recv(clientSock, buffer, sizeof(buffer), 0);
    printf("客户端消息:%s\n", buffer);

    // 发送回复
    send(clientSock, "服务器收到消息", sizeof("服务器收到消息"), 0);

    // 关闭套接字
    close(listenSock);
    close(clientSock);
}

void tcpClient() {
    int clientSock;
    struct sockaddr_in serverAddr;
    char buffer[1024];

    // 创建套接字
    if ((clientSock = socket(AF_INET, SOCK_STREAM, 0)) == ERROR) {
        perror("socket creation error");
        return;
    }

    // 配置服务器地址结构
    bzero((char *)&serverAddr, sizeof(serverAddr));
    serverAddr.sin_family = AF_INET;
    serverAddr.sin_port = htons(1234);
    serverAddr.sin_addr.s_addr = inet_addr("服务器IP地址");

    // 连接服务器
    if (connect(clientSock, (struct sockaddr *)&serverAddr, sizeof(serverAddr)) == ERROR) {
        perror("connection error");
        close(clientSock);
        return;
    }

    // 发送消息
    send(clientSock, "Hello, VxWorks!", sizeof("Hello, VxWorks!"), 0);

    // 接收回复
    recv(clientSock, buffer, sizeof(buffer), 0);
    printf("服务器回复:%s\n", buffer);

    // 关闭套接字
    close(clientSock);
}

免责申明:文章和图片全部来源于公开网络,如有侵权,请通知删除 server@dude6.com

用户评论
相关推荐
VxWorks网络编程实例TCP服务器客户端通信
本示例演示如何使用VxWorks实现一个简单的TCP服务器与客户端通信。服务器在指定端口监听连接,客户端连接后发送消息,服务器接收并回复。涉及套接字创建、绑定、监听、接受、发送和接收等基本网络编程操作
VxWorks 7
Wind River Systems
2023-11-27 20:59
VxWorks网络编程实例TCP服务器建立数据交互
本示例演示了在VxWorks实时操作系统中创建一个简单的TCP服务器,实现与客户端的数据交互。通过使用套接字编程,展示了VxWorks在网络通信方面的灵活性与高效性。#include <vxW
VxWorks 7
VxWorks实时操作系统
2023-11-16 03:47
VxWorks网络编程实例TCP套接字通信数据传输
本示例演示在VxWorks实时操作系统中使用TCP套接字进行网络通信,并展示数据的传输过程。通过简单的服务器和客户端代码,了解VxWorks网络编程的基本原理和操作。#include <vxW
VxWorks 7
VxWorks实时操作系统
2023-12-10 04:32
TCP/IP网络编程实例:实现简单的客户端-服务器通信
TCP/IP协议是互联网上数据传输的基础,通过它实现客户端和服务器之间的通信。本示例展示了一个简单的TCP/IP客户端-服务器通信实现,用于建立连接、发送消息和接收响应。# 服务器端代码impor
Python 3.9.6
PyCharm 2021.1
2023-11-10 07:02
JAVA网络编程实例TCP通信
用JAVA实现的TCP通信
RAR
0B
2019-09-14 18:52
Python socket网络编程TCP IP服务器客户端通信
主要介绍了Python socket网络编程TCP/IP服务器与客户端通信的相关资料,这里对Scoket 进行详解并创建TCP服务器及TCP 客户端实例代码,需要的朋友可以参考下
PDF
63KB
2020-09-29 06:34
vxworks网络编程实例
网络编程的一些实例,对初学者是不错的学习资料。好不容易在找到的,给大家分享一下。
RAR
0B
2019-06-04 16:34
TCP/IP套接字编程实例:Python服务器客户端通信
本示例演示了如何使用Python编写一个简单的TCP/IP服务器和客户端,实现双方之间的通信。通过socket库建立连接,服务器接收客户端消息并回复,展示TCP协议的基本通信过程。# 服务器端代码
Python 3.x
Python编程语言
2023-11-26 03:12
TCP/IP Socket编程实例:建立简单服务器客户端通信
该示例演示如何使用TCP/IP协议在Python中创建简单的服务器和客户端,实现双方之间的通信。服务器监听特定端口,客户端连接服务器并发送消息,服务器接收并回复消息。# 服务器端代码import
Python 3.x
PyCharm
2023-12-12 16:51
TCP/IP Socket编程实例:建立简单客户端服务器通信
本示例演示了使用TCP/IP套接字进行简单的客户端与服务器通信。客户端发送消息给服务器,服务器接收并回复消息。使用Python编写,利用socket库实现网络通信。# 服务器端代码import s
Python 3.9.5
Python
2023-12-13 00:40