Tehtävien palautuksille ei ole takarajaa.
Arvostelu, 32 pistettä maksimiProgram.cs
, joko jokainen erikseen tai pakattuna esim. zip pakettiinC#:ssa System.Net.HttpWebRequest
tai System.Net.Mail
ja Javassa esim. url
luokkaa)
ei saa käyttää.Java, C, C++, C#, python
kieliä tai jotain muuta
kunhan varmistat että kieli tukee soketteja.Alla listatut zip paketit sisältävät Javalla toteutettuja jar
tiedostoja, joiden pitäisi käynnistyä purkamalla tiedostot esim. MyTemp hakemistoon ja tuplaklikkaamalla.
Jos ei, niin sitten käynnistä jar
tiedosto komentokehotteesta esim. c:\MyTemp\java -jar ITKP104_Pelipalvelin.jar
jar
tiedostoja
(TCP asiakas ja TCP palvelin (Voit valita joko ITKP104 Kaiku, HTTP tai SMTP palvelimen)). Lisäksi paketissa on esimerkki www-sivu
ja sivulle linkitettyjä kuvia. Jotta www-palvelin löytää tiedostot, tulee zip paketti purkaa.MyTemp
hakemistoon ja tuplaklikkaa AjaPalvelin.bat
tai sitten komentorivillä kirjoita java -jar UDPChatServer.jar
.
Palvelin pysäytetään CTRL-c
näppäin yhdistelmällä.Ennen tämän sivun harjoitusten aloittamista kannattaa tutustua TIM-järjestelmässä oleviin tehtäviin, joissa tutustutaan soketin käyttöön. Tehtävistä on mahdollista saada lisäpisteitä ITKP104 Tietoverkot kurssin suoritukseen.
Tiedonsiirron toteuttaminen soketeillaVideot on siirretty TIM-järjestelmään.
Tehtävien alle linkitetyt videot ei enää toimi.Apuja tehtävien tekoon löytyy ohjevideoista, jotka löytyvät tehtävien alta tai voit katsoa
kaikki ohjevideot yhdellä sivulla.
Ohjevideot on tehty kevään 2014 kurssille, mutta soveltuvat myös uudemmille kursseille.
Ohjevideot on tehty C#-ohjelmointikielellä Windows ympäristössä.
Verkko-ohjelmointia pythonilla tai muita lähteitä eri ohjelmointikielille voi käyttää vapaasti apuna.
Videon koko: Videon nopeus: Autoplay:
Videon koko: Videon nopeus: Autoplay:
Lähettäjän nimi;teksti
Ari: Moikka
Videon koko: Videon nopeus: Autoplay:
Videon koko: Videon nopeus: Autoplay:
|Viesti|Arvo|
välilyönnillä
tai ; -merkillä
viestit
: JOIN, DATA, ACK, QUIT
JOIN
- liitytään peliin - Arvo
= Pelaajan nimiDATA
- pelin tapahtumiin liittyvää dataa - Arvo
= arvattava numero (asiakkaalta palvelimelle, sekä palvelimen välittämä pelaajan arvaus vastustajalle)ACK
- kuitataan kaikki muut paitsi ACK viestit - Arvo
= status koodi ilmaisee tarkemmin minkälainen kuittaus (Statuskoodin jälkeen voi olla välilyönnillä erotettuna tekstiä, joka siis sisältyy Arvo
-kenttään)QUIT
- lopetetaan peli - Arvo
= 501 (sinä voitit) tai 502 (vastustaja voitti)ACK-viestin
statuskoodeista joita voit käyttää (luennoitsijan esimerkkipalvelimessa voi olla myös muita)
Videon koko: Videon nopeus: Autoplay: