TAPS (programmeringsgrensesnitt)
TAPS eller Transport Services er en spesifikasjon for et programmeringsgrensesnitt for dataoverføring mellom applikasjoner på internett som er ment å erstatte programmeringsgrensesnittet Berkeley sockets. En av forbedringene over Berkeley sockets er at applikasjonen ikke trenger å låse seg til en bestemt protokoll. I stedet sier utvikleren hva som er viktig, for eksempel hastighet, sikkerhet eller stabilitet, og grensesnittet velger så en passende protokoll.[1]
Spesifikasjonen benytter asynkron kommunikasjon. I motsetning til Berkeley sockets har den ikke mulighet for blokkering, det vil si å la applikasjonen vente til det har blitt sendt eller mottatt data. Den er i stedet hendelsesdrevet, som betyr at programmereren må implementere kode for tilbakekall for forskjellige hendelser. Siden moderne datamaskiner gjerne har flere nettverksenheter, for eksempel har mobiltelefoner både Wi-Fi og mobildata, og datamaskiner har mulighet for både protokollene IPv4 og IPv6, benytter spesifikasjonen en algoritme kalt Happy Eyeballs for raskt å velge rett enhet.
TAPS ble foreslått som standard i 2022 av Internet Engineering Task Force. Den er implementert i Apples programmeringsgrensesnitt Network.framework, samt noen andre eksperimentelle implementasjoner. Forskere ved Universitetet i Oslo foreslo i 2020 å benytte TAPS-programmeringsgrensesnittet sammen med nettverksarkitekturen RINA.[2]
Referanser
[rediger | rediger kilde]- ^ Eivind Torgersen (20. juni 2022). «Snart i mål med nytt transportsystem for internett». Titan.uio.no. Besøkt 7. september 2022.
- ^ Kristjon Ciko; Michael Welzl; Marcel Marek (2020). «TAPS and RINA: Do they fit together?». 2020 23rd Conference on Innovation in Clouds, Internet and Networks and Workshops (ICIN): 35–40. doi:10.1109/ICIN48450.2020.9059406.
Eksterne lenker
[rediger | rediger kilde]- Philipp S. Tiesel (23. august 2019). TAPS Transport Services API. media.ccc.de.
- «Transport Services (taps)». IETF Datatracker.