Telekomunikatsiya texnologiyalari fakulteti 417-20 guruhi talabasi Abduxakimov Shohruh ning


Download 30.78 Kb.
Sana31.01.2024
Hajmi30.78 Kb.
#1828100
Bog'liq
TDA 1-lab Abuxakimov


MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI
UNIVERSITETI



Telekomunikatsiya texnologiyalari fakulteti
417-20 guruhi talabasi Abduxakimov Shohruh ning
Tarmoq dasturlash asoslari fanidan
1-labaratoriya ishi Variant-5


Toshkent 2023


Mavzu: TCP kliyent-server tarmoq dasturini yaratish


Ishning maqsadi:
Talabalarda Java dasturlash tili java.net.* va java.io.* paketlari klasslaridan
foydalanib TCP kliyent-server tarmoq dasturini yaratish bo‘yicha amaliy
ko‘nikmalar hosil qilish.

TCP yoki Transmission Control Protocol - bu tarmoq orqali ma'lumotlarni uzatish uchun ishlatiladigan protokol. Bu ulanishga yo'naltirilgan protokol bo'lib, ma'lumotlarni yuborishdan oldin masofaviy so'nggi nuqta bilan ulanishni o'rnatadi.


TCP mijoz-server modelida mijoz ulanishni boshlaydi, server esa ulanishni tinglaydi va qabul qiladi. Ulangandan so'ng, ma'lumotlar ikkala tomonga ham oqishi mumkin. Mijoz TCP yordamida internet-resursdan ma'lumotlarni so'raydi. Mijozning usullari va xususiyatlari TCP1-dan foydalangan holda ma'lumotlarni so'rash va qabul qilish uchun rozetkani yaratish uchun tafsilotlarni mavhumlashtiradi.


Boshqa tomondan, server ulanish uchun mijozning unga yaqinlashishini kutadi. Ulanish o'rnatilgach, ular ma'lumotlarni uzatishga tayyor bo'ladi.


.NET dagi TcpCli


ent klassi sinxron blokirovka rejimida tarmoq orqali oqim ma'lumotlarini ulash, jo'natish va qabul qilishning oddiy usullarini taqdim etadi. TcpClient ulanishi va ma'lumotlar almashishi uchun TCP ProtocolType bilan yaratilgan TcpListener yoki Socket kiruvchi ulanish so'rovlarini tinglashi kerak.


TCP ma'lumotlar paketlarining oxirgi nuqtaga yuborilishini va ular kelganda to'g'ri tartibda yig'ilishini ta'minlaydi. U uzatilgan ma'lumotlarning saqlanib qolishi va yuborilgan tartibda kelishini ta'minlash uchun javobgardir. TCP shuningdek, ishonchlilik va tirbandlikni nazorat qiladi. Xato paketlar manbadan manzilga qayta uzatiladi.


TCP HTTP, HTTPs, FTP, SMTP, Telnet kabi boshqa protokollar tomonidan qo'llaniladi. Bu yuqori ishonchlilikni talab qiladigan ilovalar uchun mos keladi va uzatish vaqti nisbatan kamroq muhim.


TCP Server


package org.example;
import java.io.*;
import java.net.*;

public class TCPServer {


public static void main(String[] args) throws IOException {
ServerSocket serverSocket = new ServerSocket(6789);
System.out.println("Server is running and waiting for a client...");

Socket connectionSocket = serverSocket.accept();


BufferedReader inFromClient = new BufferedReader(new InputStreamReader(connectionSocket.getInputStream()));
DataOutputStream outToClient = new DataOutputStream(connectionSocket.getOutputStream());

double base = Double.parseDouble(inFromClient.readLine());


double height = Double.parseDouble(inFromClient.readLine());

double area = (base * height) / 2;

outToClient.writeBytes(Double.toString(area) + '\n');

connectionSocket.close();


}
}

TCP Client


package org.example;
import java.io.*;
import java.net.*;

public class TCPClient {


public static void main(String[] args) throws IOException {
Socket clientSocket = new Socket("localhost", 6789);
DataOutputStream outToServer = new DataOutputStream(clientSocket.getOutputStream());
BufferedReader inFromServer = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));

outToServer.writeBytes("10\n");


outToServer.writeBytes("5\n");

String area = inFromServer.readLine();


System.out.println("The area of the triangle is " + area);

clientSocket.close();


}
}

Natija:







Download 30.78 Kb.

Do'stlaringiz bilan baham:




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling