• Aucun résultat trouvé

PR6 – Programmation réseaux TP no 7 : Programmation réseaux en C (suite)

N/A
N/A
Protected

Academic year: 2022

Partager "PR6 – Programmation réseaux TP no 7 : Programmation réseaux en C (suite)"

Copied!
1
0
0

Texte intégral

(1)

L3 Informatique Année 2016–2017

PR6 – Programmation réseaux

TP n

o

7 : Programmation réseaux en C (suite)

Exercice 1 : Mystère sur le port 2628

1. Déterminer le nom du service associé au port tcp 2628. À quoi pourrait-il bien servir ? 2. Se connecter à ce service sur la machinelucien oudict.org à l’aide de la commande nc(ou telnet) et tester quelques requêtes (une requête très utile :HELP). Par exemple surlucien on peut essayer de retrouver la définition du mot bugdans le dictionnaire jargon, ou sur dict.orgcelle de hello dans le dictionnaire de langue anglaise.

3. La définition de ce service est décrite par la RFC 2229. Parcourir ce document afin de vous faire une idée de la description d’un tel service.

4. Écrire un programme C qui prend en argument un mot et, qui retourne sa définition s’il la trouve et affiche un message d’erreur dans le cas contraire. Pour cela utiliser le service disponible sur le port 2628 surlucien ou dict.org.

Exercice 2 : Comme les académinumériciens, faites votre dico...en ligne ! Écrire deux programmes C, un client et un serveur qui implémentent un service simplifié de dictionnaire. Le protocole est élémentaire, le client se contente d’envoyer un mot au serveur qui lui renvoit la réponse sous la forme d’un texte constitué d’un nombre quelconque de lignes de caractères, comme avec la commande dict puis ferme la connexion. Dans un premier temps, votre serveur n’acceptera qu’une seule connexion à la fois.

1. Tester la commandedictafin de retrouver la définition du motdilemma, ouffffkkkppp.

2. Écrire un programme permettant (à l’aide de popen()) de lancer la commande dict avec un argument puis de récupérer ses résultats.

3. Écrire le code du serveur. Tester avectelnet.

4. Écrire le code du client.

Pour aller plus loin...

5. Utiliserfork()afin de permettre à votre serveur de pouvoir accepter plusieurs connexions simultanées.

6. Écrire une version du serveur en langage Java.

7. Modifier le protocole de sorte à pouvoir obtenir la liste des dictionnaires puis à recher- cher un mot dans un dictionnaire donnée.

1

Références

Documents relatifs

Écrire un programme qui prend 3 arguments fic, alire, pivot sur la ligne de commande, vérifie que fic est composé uniquement de chiffres et si c’est le cas, stocke dans une chaîne

Ce message aura la forme suivante : adresse_ip port\n où adresse_ip est une chaînes de caractère représentant une adresse IP et port est une chaîne de caractères représentant

Pour cela le client demande la définition d’un mot au serveur et celui-ci lui renvoie le texte obtenu par l’appel à l’utilitaire dict (voir man dict sur son terminal).. Si dict

Dans chacun des trois exercices ci-dessous, il s’agit d’écrire un serveur qui reçoit une image sous une certaine forme, la transforme en niveaux de gris et la renvoie sous une

Écrire un programme, ServeurMajuscule, représentant un serveur TCP itératif renvoyant les chaînes de caractères envoyées par des clients après les avoir mis en majuscule.. Le

Pour cela, faire en sorte que le serveur détermine le nombre à choisir lorsque qu’un client se connecte et qu’il n’y a à ce moment là pas de client connecté.. Tout client qui

L’idée est la suivante : un client producteur envoie au serveur une chaîne de caractères qu’il aura reçu par l’entrée standard (le clavier), le serveur stocke alors cette

S’il y a un tuteur de cette discipline disponible, le serveur renvoie au client l’identifiant de ce tuteur et le retire de la liste des tuteurs disponibles.. Sinon le serveur renvoie