Content deleted Content added
→Security: cryptography correction |
→See also: add portal |
||
(24 intermediate revisions by 11 users not shown) | |||
Line 1:
{{Short description|Terminal command scheme used to transfer data}}
{{Infobox networking protocol
[[File:FTP vs Aspera Comparison.webm|thumb|A screencast showing downloading the same file from the European Sequence Read Archive via wget/FTP and ascp/Aspera/FASP]]▼
| title = Fast and Secure Protocol
| logo =
| logo alt =
| image =
| image alt =
| caption =
| is stack = No
| abbreviation = FASP
| purpose = Data transfer
| developer = Michelle C. Munson and Serban Simu
| date = {{Start date and age| | | }}<!--Fill in: Year (4 digits), month and day (2 digits)-->
| based on = [[User Datagram Protocol|UDP]]
| influenced =
| osilayer =
| ports = tcp/22, udp/33001
| rfcs =
| hardware =
}}
▲[[File:FTP vs Aspera Comparison.webm|thumb|A screencast showing downloading the same file from the European Sequence Read Archive via [[wget]]/[[File Transfer Protocol|FTP]] and ascp/Aspera/FASP]]
{{Internet protocol suite|transport=FASP}}
The '''Fast Adaptive and Secure Protocol''' ('''FASP''') is a [[Proprietary software|proprietary]] data transfer [[Communication protocol|protocol]]. FASP is a network-optimized network protocol
Large organizations like
==Security==
{{Unreferenced section|date=July 2018}}
FASP has built-in security mechanisms that do not affect the transmission speed. The [[encryption]] [[algorithm]]s used are based exclusively on [[open standard]]s.
The data is optionally encrypted or decrypted immediately before sending and receiving with the [[Advanced Encryption Standard|AES-128]]. To counteract attacks by monitoring the encrypted information during long transfers, the AES is operated in [[cipher feedback mode]] with a random, public [[initialization vector]] for each block. In addition, an integrity check of each [[Block (data storage)|data block]] takes place, in which case, for example, a [[man-in-the-middle attack]] would be noticed.
Line 19 ⟶ 38:
FASP's control [[port (computer networking)|port]] is TCP port 22{{snd}} the same port that SSH uses. For data transfer, it begins at UDP port 33001, which increments with each additional connection thread.<ref name="register"/>
FASP's flow control algorithm, unlike TCP's, completely ignores packet drops. Instead, it acts on changes in measured packet delivery time. When that is growing, queues are getting longer and channel bandwidth is exceeded; falling, queues are getting shorter. Acting on this information is complicated because the receiver has it and the sender needs it, but its lifetime is often less than the transmission delay; and measurements are noisy. Thus, the sender uses a predictive filter fed updates from the receiver.<ref>{{cite web | url=https://news.ycombinator.com/item?id=21909190 | title=Ex Aspera Dev here. I did the encryption and early parallel work. There is a lot... | Hacker News }}</ref>
The transmission rate is chosen to match and not exceed the available channel bandwidth, and trigger no drops, accounting for all traffic on the channel.<ref>{{Cite book |last=Klimek |first=Ivan |url=https://www.yumpu.com/en/document/view/53450087/technicka-univerzita-v-kosiciach-stargatecnlsk |title=Wide Area Network Traffic Optimization |publisher=Technical University of Košice |year=2011 |___location=Košice |pages=49 |language=en |department=Faculty of Electrical Engineering and Informatics}}</ref> By contrast, TCP slowly increases its rate until it sees a packet drop and falls back, interpreting any drop as congestion. On a channel with long delay and frequent packet loss, TCP never approaches the actual bandwidth available. FASP cooperates with TCP flows on the same channel, using up bandwidth TCP leaves unused.
==See also==
{{Portal|Internet}}
* [[Tsunami UDP Protocol]]
* [[UDP-based Data Transfer Protocol|UDP-based Data Transfer Protocol (UDT)]]
|