Find Jobs
Hire Freelancers

Basic TCP & UDP client/server using IPv6 extension headers

$250-750 USD

Në vazhdim
Postuar over 9 years ago

$250-750 USD

Paguhet në dorëzim
I am working on a software defined network project, and I need a basic TCP and UDP client and server to drive traffic on the network, written in C, C++, or Python. (Most preferred, C code that can be later wrapped in Python.) This is for a research project, so I am looking for a simple but functional program provided quickly (doesn't need to be tuned tightly for production-grade performance). Program must work on Ubuntu 14.04 (portability to other OS's not required). Both client and server need to: 1) work on IPv6 networks, 2) add specified data tags to each packet in the Destination Options field (formatting given by RFC 2460 and RFC 3542, with type 30 (experimental) header data within the type 60 (destination options) header field). Server setup: Accept a data structure of 64-bit uint host ID and variable-length string item name. Each host ID will have multiple item names associated with it (example: host ID = 1:0:0:0:0:0:0:1, item names = ['a', 'b', 'c', 'd']), and each server will have to serve multiple host IDs. Generate random dummy data (30-800 bytes long) associated with each tuple. Accept a command-line argument specifying either TCP or UDP operation. Server operation: Open a listening socket on the addresses given by [network address]:[host ID] (continuing example, if network ID is 2001:: and host ID = 1:0:0:0:0:0:0:1, server should open a socket on 2001::1:0:0:0:0:0:0:0:1). TCP operation: accept connection requests to the open address, parse the packet payload for the item name (example, 'a'), reply with the dummy data associated with item 'a', then close the connection. Reply packets should be tagged in the destination options field with the item name. UDP operation: listen for inbound packets on the given addresses, parse the item name from the destination options field, then reply with a single packet, with the item name in the destination options field and the associated data in the payload field. Client setup: Accept a data structure pairing network address to host ID (one-to-one mapping), and a data structure listing the data items associated with each host ID. Accept a command-line argument specifying either TCP or UDP operation, a maximum transmission rate (in requests per second), and a maximum number of requests to make. For UDP operation, also accept a retry parameter specifying the time to wait for the return packet (if no reply, resend the request after X milliseconds). Client operation: TCP: Randomly select a network address-host ID entry and randomly select one data item associated with that host ID. Establish a connection to the server at the selected address, and transmit a packet with the data item name in the payload. This packet should also be tagged in the destination options field with the item name. Close the connection after receiving the reply. Record the network address, host ID, data item, and total elapsed time from first packet sent until completion of the TCP session. UDP operation: Randomly select a network address-host ID entry and randomly select one data item associated with that host ID. Transmit one packet to the selected address, tagged with the data item name in the destination options field. If no reply received by the expiration of the timer, resubmit the request (repeat a maximum of 10 times). Record the network address, host ID, data item, and total elapsed time from first packet sent until receipt of the reply.
ID e Projektit: 6580383

Rreth projektit

9 propozime
Projekt në distancë
Aktive 10 yrs ago

Po kërkoni të fitoni para?

Përfitimet e ofertës për Freelancer

Vendosni buxhetin dhe afatin tuaj
Paguhuni për punën tuaj
Përshkruani propozimin tuaj
Është falas të regjistrohesh dhe të bësh oferta për punë
I dhënë për:
Avatari i Përdoruesit
Hello I am C and C++ expert and interested in this project. I have reviewed your requirements and confident to handle it perfectly. Please communicate to discuss further. Regards Anshu
$631 USD në 5 ditë
4,7 (238 përshtypje)
6,8
6,8
9 profesionistët e pavarur ofrojnë mesatarisht $560 USD oferta për këtë punë
Avatari i Përdoruesit
A proposal has not yet been provided
$300 USD në 1 ditë
5,0 (70 përshtypje)
5,9
5,9
Avatari i Përdoruesit
hello i am red hat certified engineer and i easily can do this task bcz i am more then 4 year experience in this field i am expert in java,python,xbmc, perl and many ready to start now thanks
$526 USD në 4 ditë
4,9 (30 përshtypje)
5,6
5,6
Avatari i Përdoruesit
hi... i can do this. Please let me know to start immediately. i can deliver you on time. Please initiate communication to discuss further. thanks
$555 USD në 10 ditë
4,8 (48 përshtypje)
5,1
5,1
Avatari i Përdoruesit
hello sir I have a great tram for this work and we have a experienced person in this field we are able to gove a good output for your work . we have a 4 years of experience in this field so contact me sir a give a full detail fore your work
$1 111 USD në 25 ditë
0,0 (0 përshtypje)
0,0
0,0
Avatari i Përdoruesit
I've been writing C++ professionally for well over a decade, and specialise in low-level TCP and UDP networking. If you tell me a bit more about your requirements I can tailor a solution that will work for you. I've got hard-earned practical experience of writing Linux network software, from multiplayer console games to high-performance services that serve 200k messages a second, I've done most things. If you would like to talk more about the project please feel free to send me a message.
$722 USD në 10 ditë
0,0 (0 përshtypje)
0,0
0,0
Avatari i Përdoruesit
I already did IPv6 socket programming extensively for sectors such as telecommunication, business training and National social security sectors, where I excel meeting deadlines and in code quality as well as overall system performance. The plan of action consists of: 1: Understand the project requirements 2: Present a general layout of the project implementation 3: After 2nd step acceptance from your end the project will be built 4: Tests will be performed and when it is up to standards, the project will be sent to you 5: Program will be tested on your platform and any concern will be addressed and fixed. Best Regards
$666 USD në 20 ditë
0,0 (0 përshtypje)
0,0
0,0
Avatari i Përdoruesit
Many of the things you're looking for have already been implemented by linux's syscalls. I can write the program for you in C, but I have no experience in wrapping Python code around it. I've done socketing programming on Linux briefly before. Hope that matters. Yours truly, Patchouli Knowledge "The Great Unmoving Library"
$250 USD në 10 ditë
0,0 (0 përshtypje)
0,0
0,0

Rreth klientit

Flamuri i UNITED STATES
Springfield, United States
0,0
0
Mënyra e pagesës u verifikua
Anëtar që nga tet 12, 2014

Verifikimi i klientit

Faleminderit! Ne ju kemi dërguar me email një lidhje për të kërkuar kredinë tuaj falas.
Ndodhi një gabim gjatë dërgimit të email-it tuaj. Ju lutemi provoni përsëri.
Përdorues të regjistruar Punë të postuara
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Po ngarkohet shikimi paraprak
Leja u dha për Geolocation.
Seanca e hyrjes ka skaduar dhe ke dalë. Hyr sërish.