ITM30408 Gruppe5 Oblig4
Fra Hiofwiki
Innhold |
Oblig 4 - RTSP - Real Time Streaming Protocol
Utviklingen av Multimedia på web og bakgrunnen for utviklingen av RTSP
Streaming av lyd og bilde er en relativ ny teknologi som fikk rotfeste på midten av 1990 tallet. Cu-SeeMe var den første av typen streaming protokoller som kunne ved hjelp av reflektor teknologi. levere multimedia og ble skrevet av Tim Dorcey ved Corneell University for Machintosh i 1992 (Windows 1994). Den fikk ikke en videre kommersiell betydning, men ble tatt over av "White pine Software" i 1998 og gjort kommersiell, men i 1992 startet Marc Andreessen utviklingen av den første multimedia nettleseren kaldt Mosaic mens han studerte på "Natonal Center for Supercomputing Applications". "Spyglass" som var en kommersiell del av NCSA, tok så over rettighetene til nettleseren. Den ble senere gitt ut med en media player kalt Vosaic med støtte for en lang rekke formater som brukte VDP - "Video Datagram Protocol" som transport protokoll isteden for RTP. Marc Anderson forlot NCSA og startet Mosaic Communication Corporations som senere skiftet navn til Netscape Communication Corportation noe som førte til at nettleseren Netscape ble til.I 1995 ble Mosaic lisensiert av Microsoft. Microsoft stjal så kildekoden og gav ut sin Internett Explorer samme året. Samtidig started Rob Glaser, tidligere visepresident for Microsoft, et selskap kaldt Progressive Networks for å promotere politisk aggresivt materiale. De sluttet fort da de innså at eierne var mer opptatt av teknologien enn innholdet. De startet derfor et samarbeidet med Microsoft og I 1996 ble Internett explorer 3 gitt ut med en RealAudio applikasjon kaldt ActiveMovie. Progrssive Nettworks forandret navn til RealNetworks. Under denne tiden brukte Real Networks en protokoll for streaming kaldt PNM/PNA, men de begynte å bli nervøse for at Microsoft skulle dytte dem ut av markedet så de gikk inn i et samarbeid kaldt MMUSIC i IETF sammen med Colombia University og Netscape, som lenge hadde vært en bitter konkurrent til Microsofts Internett Explorer. Formålet var å utvikle en multimediaprotokoll for klient/server kommunikasjon. De fikk til en avtale mellom 40 forskjellige selkaper om å støtte protokollen. Der i blant Apple, Autodesk, Cisco, Hewlett-Packard, IBM, Silicon Graphics, Sun, Macromedia etc. Microsoft lanserte i 1998 sin egen løsning for å se media på nett som de kalte DirectShow som en del av Windows Media Player 2. De gav ut også sin egen "Netshow Video Server" som tok bruk av "Media Stream Broadcast Protocol" (MSB). Utviklingen av RTSP kom derfor ikke bare som et nødvendig ledd for å standardisere streaming, men også som en konsekvens av patentstridigheter. I 1998 ble Microsoft stilt for amerikansk handelsrett. De ble dømt og har siden måttet åpne for at utviklere skal kunne ha tilgang til kildekoden under utvikling av applikasjoner mot Windows. I 1998 fikk vi derfor RTSP. QuickTime Streaming Server og Darwin Streaming Server ble de første RTSP servererene som kom ut på markedet året etter i 1999. Det er vært å merke seg at en lang rekke open source prosjekter ble til i denne tiden som en følge av Microsofts aggressive markedsførings strategier.
Veien Videre
- RFC 2326 vil bli om publisert desember 2008 med en oppdatering om hvordan lettere traversere NAT bokser og med oppdaterte spesifikasjoner. Forhåpentligvis vil det kaste litt lys over den problematikken RTSP har med proxy servere.
- RealRTSP er en proprietær videreutvikling av RTSP gjort av Real for å bruke RDT som underliggende transport protokoll.
- QuickTime har en egen modul for å sende RTSP og RTP over HTTP for brukere som kobler seg på nettet via proxy servere.
Andre protokoller
RTCP, SRTCP:
- RFC 3550 Søster protokoll som samarbeider med RTP.
- Samler statestikk om RTSP sessionen: bytes sent, pakker sent, tapte pakker, jitter, forsinkelser.
RTMP, RTMPT, RTMPTS:
- Utviklet av Adobe Systems for streaming av flash audio og video
- Brukes av Flash Media Server og Wowza Media Server og RED 5
- Bruker port 1935
- Jobber på toppen av TCP
- RTMPT er inkapslet i HTTP for å komme gjennom brannmurer.
HTTP: RTMPT og Shoutcast:
- RTMPT er ikke annet enn RTMP som er pakket inn i HTTP.
- HTTP kan også brukes til å streame video og lyd og brukes av Shoutcast servere og Icecast servere til dette.
- Når http brukes med shoutcast eller icecast brukes det ICY tags (I CAN YELL).
- Shoutcast er utviklet av Nullsoft og implemetert i icecast og Shoutcast Media Server.
- Bruker port 80,8080, 8888 eller 8000.
MMS/MSBD/MSB- Microsoft Media Services:
- Utviklet av Microsoft og kan brukes på samme måte som RTSP med støtte for multicast. Kom ut første gang i 1997, men som Microsoft har forlatt til fordel for RTSP.
- Bruker port 1755.
PNM/PNA:
- Tidligere proprietær protokoll brukt av RealNetworks.
- Ble forlatt til fordel for RTSP.
- Bruker port 7070.
Video Datagram Protocol – VDP/HTTP:
- En eldre transport protokoll brukt av nettleseren Mosaic som gjorde bruk av den gjennom multimedia spilleren Vosaic.
Bittorrent:
- Peer-to-peer streaming eller sverming.
- Er ikke sekvensiell, men laster ned datapakker i hvilken som helst rekkefølge.
- Gjør flere små data pakke forespørsler over forskjellige TCP sockets.
- Forskjellige peer-to-peer løsninger: PeerCast, PPStream, CoolStreaming, freecast og Iceshare.
SIP, H.323 og Skype:
- VoIP protokoller for å sette opp telefoni over internett.
- H.323 er et sett protokoller standardisert av ITU (Telecommunication Standardization Sector)
- Er spesielt designet med tanke på støtte for vanlige telefon funksjoner. Mens H.323 er navnet på gruppen av protokoller er H.245 som er de underliggende protokollene som sørger for oppretting og lukking av forbindelsene. RTP/RTCP er transport og kontroll protokollene som brukes.
- SIP er en standardisering av IETF.
- SIP Har lenge vært den mest brukte bland telefon protokollene på grunn av muligheten for NAT traversering.
- Skype er eid av Ebay.
- Skype er en desentralisert løsning basert på peer-to-peer teknologi.
FTP streaming:
Enkelte klienter som MPlayer tillater også FTP streaming hvor FTP brukers istedenfor UDP og TCP.
