Luku 11: Verkkopelit. Resurssit Ennustaminen Huijaus. Lähde: Smed, Hakonen

Samankaltaiset tiedostot
Luku 11: Verkkopelit. Resurssit Ennustaminen Huijaus. Lähde: Smed, Hakonen

8/21/2013 TIE PELIOHJELMOINTI ANIMAATIO, AI, MAAILMAT, VERKKO ANIMAATIO SUORA JA KÄÄNTEINEN KINEMATIIKKA LUURANKOANIMAATIO

Newtonin ominaisuudet

S Teletekniikan perusteet

Tietoverkkojen turvallisuus. Tuomas Aura T Johdatus tietoliikenteeseen kevät 2012

Tietoverkkojen turvallisuus. Tuomas Aura T Johdatus tietoliikenteeseen kevät 2011

Integrointialgoritmit molekyylidynamiikassa

Salausmenetelmät (ei käsitellä tällä kurssilla)

PUSH palvelut mobiilikehityksessä: Android ja Windows phone 7. Pauli Kettunen

5. Luento: Rinnakkaisuus ja reaaliaika. Tommi Mikkonen,

Tekninen suunnitelma - StatbeatMOBILE

ELEC-C7241 Tietokoneverkot Multimedia, tietoturva, jne.

Tietoliikenne II (2 ov)

IPTV:n asettamat vaatimukset verkolle ja palvelun toteutus. Lauri Suleva TI07 Opinnäytetyö 2011

Tekninen suunnitelma - StatbeatMOBILE

Kuljetus- ja sovelluskerroksen tietoturvaratkaisut. Transport Layer Security (TLS) TLS:n suojaama sähköposti

Tietoliikenne II (2 ov)

Verkkoliikennettä Java[ssa lla] Jouni Smed

Palomuurit. Palomuuri. Teoriaa. Pakettitason palomuuri. Sovellustason palomuuri

Evolutiivisesti stabiilin strategian oppiminen

Liikkuvien isäntäkoneiden reititys

IP-reititys IP-osoitteen perusteella. koneelle uusi osoite tässä verkossa?

Pertti Pennanen DOKUMENTTI 1 (5) EDUPOLI ICTPro

Pikaviestinnän tietoturva

3. Kuljetuskerros 3.1. Kuljetuspalvelu

Poikkeavuuksien havainnointi (palvelinlokeista)

Miska Sulander Jyväskylän yliopisto Atk keskus FUNET yhdistyksen vuosikokous

Vasteaika. Vasteaikaa koskeva ohje ei ole juuri muuttunut Robert B. Millerin vuonna 1968 pitämästä esityksestä:

Paavo Kyyrönen & Janne Raassina

18 Komponentit, ulkoasu ja visuaalisuus. Materiaalit CC-BY 4.0 Mikko Lampi

Internet ja tietoverkot 2015 Harjoitus 7: Kertaus

Konsensusongelma hajautetuissa järjestelmissä. Niko Välimäki Hajautetut algoritmit -seminaari

Vuonohjaus: ikkunamekanismi

Y k s i t y i s y y s j a t i e t o s u o j a v e r k o s s a. Mikko Rauhala Vaalimasinointi.org

Liikenneteorian tehtävä

Reititys. Tietokoneverkot 2009 (4 op) Syksy Futurice Oy. Reititys. Jaakko Kangasharju.

OHJ-2710 Peliohjelmointi. Syksy 2012 Timo Kellomäki

Verkko-optimointiin perustuva torjuntatasan laskenta mellakkapoliisin resurssien kohdentamisessa (valmiin työn esittely) Paavo Kivistö

TK Palvelinympäristö

Multicast. Johdanto Ryhmien hallinta Reititys Reaaliaikaiset siirto- ja hallintaprotokollat Resurssien varaus Sessioiden hallinta

Signalointi: autonromujen markkinat

Stabilointi. Marja Hassinen. p.1/48

Tietoverkkojen turvallisuus. Tuomas Aura T Johdatus tietoliikenteeseen kevät 2013

Tietoturva P 5 op

Rajapintapalveluiden käyttöehdot. Ohjelmistotalopäivä

Siltojen haitat. Yleisesti edut selvästi suuremmat kuin haitat 2/19/ Kytkin (switch) Erittäin suorituskykyisiä, moniporttisia siltoja

Kumisaappaista koneoppimiseen

OLS LEIJONALIIGA SÄÄNNÖT

Kuljetus/Sovelluskerroksen tietoturvaratkaisut

Tämän luennon aiheet. Kuljetus/Sovelluskerroksen tietoturvaratkaisut. TLS:n turvaama HTTP. Transport Layer Security (TLS) TLS:n suojaama sähköposti

Peliteorian soveltaminen hajautettujen järjestelmien protokollasuunnittelussa (valmiin työn esittely)

Tietoturvapolitiikka turvallisuuden perusta

Kuljetus- ja sovelluskerroksen tietoturvaratkaisut. Transport Layer Security (TLS) TLS:n turvaama HTTP. TLS:n suojaama sähköposti

Kohdistettujen hyökkäysten torjunta lisää tervettä järkeä!

S Tietoliikennetekniikan perusteet. Pakettikytkentäiset verkot. Helsinki University of Technology Networking Laboratory

Järjestelmäarkkitehtuuri (TK081702) Hajautettu tietokanta. Hajautuksen hyötyjä

Kymenlaakson Kyläportaali

Sukelluskeräily, Pelihahmon liikuttaminen. Tee uusi hahmo: Pelihahmo. Nimeä se. Testaa ikuisesti -silmukassa peräkkäisinä testeinä (jos) onko jokin

Tietoturva ja tietosuoja. Millaisia ovat tietoyhteiskunnan vaarat?

1. Tietokoneverkot ja Internet Tietokoneesta tietoverkkoon. Keskuskone ja päätteet (=>-80-luvun alku) Keskuskone ja oheislaitteet

Luento 3: Liikkeen kuvausta, differentiaaliyhtälöt

Älypuhelinverkkojen 5G. Otto Reinikainen & Hermanni Rautiainen

T Yritysturvallisuuden seminaari

DNSSec. Turvallisen internetin puolesta

Referenssit ja näytteenotto VLBI -interferometriassa

HELIA 1 (14) Outi Virkki Tiedonhallinta

Pohdiskeleva ajattelu ja tasapainotarkennukset

Kuva maailmasta Pakettiverkot (Luento 1)

Työasema- ja palvelinarkkitehtuurit IC Storage. Storage - trendit. 5 opintopistettä. Petri Nuutinen

Helsingin yliopisto/tktl DO Tietokantojen perusteet, s 2000 Johdanto & yleistä Harri Laine 1. Tietokanta. Tiedosto

Robotit ja tekoäly terveydenhuollon työvälineinä nyt ja tulevaisuudessa työn tutkimukseen perustuva näkökulma

ARVO - verkkomateriaalien arviointiin Arvioitava kohde: Excel-Esitystapa, Arvioija: Juha Kuula, Arviointipäivämäärä:

Luento 9. June 2, Luento 9

- pienten ja keskisuurten yritysten ja järjestöjen valmennushanke

Jan Hursti, Kehityspäällikkö, Isoworks Oy. Turvallista pilvipalvelua keskisuurille yrityksille

SÄHKÖPOSTIN SALAUSPALVELU

Kiinnostuspohjainen topologian hallinta järjestämättömissä vertaisverkoissa

Ammattikorkeakoulun IT-palvelujen säännöstö sitoo ja velvoittaa jokaista käyttäjää. Myös sinua.

Toiminnan järjestäminen JyPK:n juniorijoukkueissa. 8v8 joukkueet (10-13v)

Julkishallinnon tietoturvatoimittaja

Yritysturvallisuuden perusteet. 11. Luento Tietotekninen turvallisuus

Tietotunti klo 12 ja 17. Aiheena sosiaalisen median sovellukset: Instagram, Twitter, WhatsApp ja Facebook

Cisco Unified Computing System -ratkaisun hyödyt EMC- ja VMwareympäristöissä

Ilkka Peuron Henrik Mikkonen TIES476 PELITEKNOLOGIA SYKLI 7 - VERKKOMONINPELI

T Harjoitustyöluento

Rinnakkaisuuden hyväksikäyttö peleissä. Paula Kemppi

Algoritmi III Vierekkäisten kuvioiden käsittely. Metsätehon tuloskalvosarja 7a/2018 LIITE 3 Timo Melkas Kirsi Riekki Metsäteho Oy

Ohjeistus pöytäkirjan käyttöön. Suomen Lentopalloliitto ry

Toiminnan järjestäminen JyPK:n juniorijoukkueissa. 8v8 joukkueet (10-13v)

myynti-insinööri Miikka Lintusaari Instrumentointi Oy

Pilvi 9.0. Arkkitehtuuri. Esimerkki arkkitehtuurit

Jätevesineuvonnasta hyötyä vesihuoltolaitoksille

Board Game Lab. 4 Teema. Materiaalit CC-BY 4.0 Mikko Lampi

FYSP101/K1 KINEMATIIKAN KUVAAJAT

Älysopimusten kehittäminen. Sopimus suuntautunut ohjelmointi

Siltojen haitat Yleisesti edut selvästi suuremmat kuin haitat

Liikkuvuudenhallinta Mobile IP versio 6 - protokollalla

OLS Jalkapallo. OLS Kaupunkisarja

HOJ Haja-aiheita. Ville Leppänen. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.1/10

Algoritmi I kuvioiden ja niille johtavien ajourien erottelu. Metsätehon tuloskalvosarja 7a/2018 LIITE 1 Timo Melkas Kirsi Riekki Metsäteho Oy

Transkriptio:

Luku 11: Verkkopelit Resurssit Ennustaminen Huijaus Lähde: Smed, Hakonen

Verkkopelit Useat pelit mahdollistavat monen pelaajan yhtäaikaisen osallistumisen tietoverkon avulla Smed ja Hakonen jakavat verkkopelien kommunikaation kolmeen kerrokseen: Fyysinen alusta Looginen rakenne Sovellustaso

Fyysinen alusta Fyysinen alusta asettaa rajat yhteyden suorituskyvylle kaistanleveys (bandwidth) latenssi solmujen prosessointiteho Siedettävä latenssi reaaliaikapelissä luokkaa 0,1 s - 1 s Latenssin vaihtelu eli jitter myös haitallista

TCP ja UDP TCP yhteydellinen, varma, hidas UDP yhteydetön, epävarma, nopea Peleissä usein kovat reaaliaikaiset vaatimukset; jos tieto ei ole ajoissa perillä, se on turhaa TCP:n tarjoamat ominaisuudet mukavia, mutta ne ovat yleensä liian raskaita pelikäyttöön Esim. paketin kadotessa seuraaviin ei pääse käsiksi ennen uudelleenlähetystä TCP ei siis sovellu hyvin reaaliaikaisiin peleihin

Looginen rakenne Loogisessa rakenteessa kaksi pääratkaisua: Vertaisverkko Palvelin-asiakas (voi olla hierarkinen/monipalvelin) Skaalautuvuus, kontrolli Datan hajautus eheys (consistency) vs vasteajat (responsiveness) Ratkaisut: keskitetty, kopioitu, hajautettu keskitetty eheä, hajautettu nopea

Sovellustaso Sovellus rakennetaan loogisen rakenteen päälle Skaalautuvuus: pelaajamäärän muutos Jatkuvuus (persistence): pelaajien liittyminen ja poistuminen lennossa Yhteistyö: pelaajien välinen interaktio, riippuu etäisyydestä

Resurssien rajat Resurssien riittävyys riippuu monesta tekijästä viestien määrä, kohteiden määrä, viestin koko, kiireellisyysvaatimukset, prosessointitarve Jos yksi vaatimus kiristyy, täytyy kompensoida löysentämällä muita Yleensä kommunikaatio korvataan laskennalla Resurssivaatimukset, n pelaajaa, unicast: vertaisverkko O(n 2 ) palvelin-asiakas O(n)

Resurssien säästäminen Viestien pakkaaminen redundanssin poisto erotusten lähettäminen epäoleellisen jättäminen pois (mahd. häviöllinen) Viestien yhdistäminen (batching) säästää kaistaa (headerit) vaatii prosessointia ja vasteaika kasvaa yhdistetään esim. kaikki tiettyyn hetkeen mennessä lähetetyt tai aina n kpl peräkkäisiä

Ennustaminen Tilapäivityksiä voi lähettää harvemmin, jos käytetään ennustamista Lähetetään paikan p 0 lisäksi nopeus v 0 ja kiihtyvyys a 0 ajanhetkellä 0 Asiakas voi nyt laskea muiden sijainnin ajanhetkellä t: p t = p 0 + v 0 t + 0,5 a 0 t 2 Kiihtyvyyden käyttö sopii hyvin esim. autoihin, mutta ihmisten suhteen pelkkä nopeus riittää

Ennustaminen Asiakas voi myös laskea nopeuden ja kiihtyvyyden itse aiempien sijaintien perusteella Kiihtyvyys voidaan jättää dynaamisesti huomiotta silloin kun se vaihtelee kovasti Erityyppisille pelihahmoille voi olla eri algoritmi Palvelin voi laskea ennusteen samalla tavalla ja lähettää päivityksen kun virhe on liian suuri liian suuri voi riippua vapaana olevasta kaistasta

Konvergenssi Päivityspaketin saapuessa aiheutuu hyppäys Ennustettu sijainti ja oikea poikkeavat toisistaan Ratkaisu: siirrytään uusimman informaation antamalle polulle vähitellen lineaarinen konvergenssi pehmeämpi liike: spliinit Voi silti aiheuttaa seinien läpäisyä ym.

Samanaikainen simulaatio Pelin tapahtumat voidaan jakaa deterministisiin ja epädeterministisiin ihmispelaajien toimet epädeterministisiä pseudosatunnaislukujen avulla jopa kaikki muu determinististä Kaikki pelaajat voivat suorittaa saman simulaation, jolloin teoriassa voisi riittää välittää epädeterministiset tapahtumat Käytännösä tarvitaan myös tarkistusdataa

Läheisyyssuodatus Usein olento on kiinnostunut vain sen lähellä tapahtuvista asioista Tällöin vain pieni osa asioista tarvitsee lähettää sille Olennon ympärillä kiinnostava alue: aura vastaa esim. pelaajan näkemää aluetta Jos aurat leikkaavat, saavat toistensa viestit Voidaan jakaa vielä fokukseen ja nimbukseen fokus: mitä olento näkee nimbus: millä alueella olento tulee nähdyksi

Huijaaminen Huijaus vie huijatuilta peli-ilon hyvin nopeasti Huijaamisella on monia tavoitteita päteminen: mainetta ja kunniaa voiman tunne taloudelliset hyödyt Huijaamisen estämisen tavoitteita Salatun informaation suojeleminen Pelin reiluuden takaaminen Pelimaailman oikeuden turvaaminen

Huijaaminen Palvelin-asiakas-rakenteessa on monia haavoittuvia kohtia Muunneltu asiakasohjelma itse ohjelma datatiedostot/muistin sisältö Asiakkaalta lähtevän verkkoliikenteen peukalointi Spoofing, palvelunesto Palvelimen hakkerointi, fyysiset hyökkäykset

Liikenteen peukalointi Esimerkkejä asiakasohjelman ja palvelimen välisen liikenteen peukaloinnista Tähtäysproxy Pakettien pysäyttäminen (haavoittumattomuus) Pakettien toistaminen Tarkoituksellinen viive

Viestit voi salata Suojautumiskeinoja julkisen avaimen menetelmät Viestejä voi suojata tiivisteillä (MD5 jne.) Tällöin viestiä ei voi muokata jäämättä kiinni Toistohyökkäyksen estämiseksi lisätään pakettiin satunnaisluku Tiivistealgoritmeissa heikkouksia, törmäykset Ohuet asiakkaat ja kaikki äly palvelimella Ratkaisu moniin ongelmiin Voi vaatia liikaa kaistaa/palvelintehoa

Ennustava huijaus Tilanne: vertaisverkossa pelin tila on kaikilla pelaajilla; viestit lähetetään aikaleimalla kaikille Nyt asiakas voi tarkoituksella odottaa muiden toimintoja ennen omansa päättämistä Lähetetään toiminto väärennetyllä aikaleimalla Lockstep-protokolla: pelaajat sitoutuvat toimintoon lähettämällä hajautusarvon muut eivät voi päätellä mikä toiminto on mutta kun toiminnot paljastetaan, voidaan tarkastaa, ettei pelaaja ole vaihtanut toimintoa

Muunneltu asiakasohjelma Tyypilliset asiakasohjelman muunnokset paljastavat ylimääräistä tietoa Fog of warin poisto, seinien läpi näkeminen Tavoite: palvelin lähettää mahdollisimman vähän salaista tietoa; salaus voi myös auttaa joskus Grafiikan ym. ominaisuuksien muutokset Auktoriteetin väärinkäyttö Tarkasta, että toiminnot ovat laillisia ja mahdollisia Pelaajat antavat vain komentoja, palvelin toteuttaa Vertaisverkossa varotaan vääriä huijausilmoituksia

Sääntörikkeet Peleissä on säännöt, mutta joskus niissä on aukkoja; onko niiden hyväksikäyttö huijausta? Salaliitto (collusion) epätäydellisen informaation peleissä jaetaan tietoa, joka kuuluu vain yhdelle pelaajalle toimitaan yhteistyössä kilpailullisessa pelissä ongelma esim. nettipokerissa styling, käyttäytymisen tarkkailu turnauksen tuloksiin vaikuttaminen (esim. luovutus, lahjonta)

Huono käytös Sääntöjen lisäksi huijaukseksi lasketaan joskus myös pelin hengen vastainen käytös MMORPGeissa aloittelijoiden teurastus, PK-jengit Eräs ratkaisu: pelaajien kimppuun voi hyökätä vain jos he ovat antaneet luvan Alueet, joista osassa lakia valvotaan ja osassa ei Kulkuväylien tukkiminen, kämppäys, sanallinen loukkaaminen, omien ampuminen, spämmäys,... ignore auttaa osaan ilmoittaminen pelin valvojille (taas väärien ilmoitusten riski)