Professional Documents
Culture Documents
Bài 1: Thực hiện việc truyền file text giữa client và server
Gợi ý: Thực hiện việc đọc file text và truyền liên tiếp các ký tự
Code file Sever:
#include<stdio.h>
#include<stdlib.h>
#include<sys/types.h>
#include<sys/socket.h>
#include<netinet/in.h>
#include <unistd.h>
#include <string.h>
#include <fcntl.h>
int main() {
int serverSocket = socket(AF_INET, SOCK_STREAM, 0);
listen(serverSocket, 5);
int clientSocket = accept(serverSocket, NULL, NULL);
char serverResponse[1000];
close(file);
close(clientSocket);
close(serverSocket);
return 0;
}
Code file client
#include <stdio.h>
#include <stdlib.h>
//for socket and related functions
#include <sys/types.h>
#include <sys/socket.h>
//for including structures which will store information needed
#include <netinet/in.h>
#include <unistd.h>
#define SIZE 1000
int main() {
int socketDescriptor = socket(AF_INET, SOCK_STREAM, 0);
struct sockaddr_in serverAddress;
serverAddress.sin_family = AF_INET;
serverAddress.sin_port = htons(9002);
serverAddress.sin_addr.s_addr = INADDR_ANY;
close(socketDescriptor);
return 0;
}
Kết quả chạy:
Bài 2: Thực hiện việc truyền tin trên 2 máy trong mạng LAN. Client và Server chạy trên
2 máy tính khác nhau
Gợi ý: Xác định địa chỉ IP và địa chỉ Port của máy tính để cấu hình
Code client:
#include <stdio.h>
#include <stdlib.h>
//for socket and related functions
#include <sys/types.h>
#include <sys/socket.h>
//for including structures which will store information needed
#include <netinet/in.h>
#include <unistd.h>
#define SIZE 1000
int main() {
int socketDescriptor = socket(AF_INET, SOCK_STREAM, 0);
struct sockaddr_in serverAddress;
serverAddress.sin_family = AF_INET;
serverAddress.sin_port = htons(9002);
serverAddress.sin_addr.s_addr = inet_addr("10.10.161.21");
connect(socketDescriptor, (struct sockaddr*) &serverAddress,
sizeof(serverAddress));
char serverResponse[SIZE];