SlideShare une entreprise Scribd logo
1  sur  13
SWORD2 &
 BITTORRENT
A Network Admin’s Worst Nightmare
     Tim Brody, Damian Steer,
Sander van der Waal, Steve Welburn
WHAT IS SWORD2?

SWORD2 is a protocol for depositing stuff and its metadata
with a repository. It's implemented as a profile of the Atom
Publishing Protocol, which is roughly:

  Client GETs service document from server

  Client POSTs stuff for deposit and metadata to url
  mentioned in service document

  Server responds with 'created this at url'
Client can GET url

  Client edit url content with PUT

  Client can DELETE url

Atom originated in blogs, and SWORD2 essentially just
expands the metadata used.
THE PROBLEM WITH
BIG DEPOSITS
Big deposits take ages to transfer, which makes them
suseptible to interruptions due to error, or simply boredom
('Oops, I closed my laptop...'). In itself that ought to be
recoverable since HTTP supports partial uploads using the
range header. However if you look at steps 2 and 3 above
you may see a problem:

  Client POSTs stuff for deposit and metadata

  Server responds with 'created this at url'
THE IDEA

Send a reference to content via SWORD, rather than the
content itself.

We could use any number of schemes then, such as ftp,
rsync or http. (HTTP will work fine this way around because
the content has an identity and could be resumed)

(Aside: it's also interesting that a repository could chose not
to download, such as situations where the data is stored in a
national subject repository)
OR BITTORRENT

Unlike rsync, ftp, or http, there are many 'server'
implementations, with nice GUIs, for a variety of platforms
in a number of languages. ('server' and 'client' labels aren't
especially helpful with bittorrent)

Handles partial downloading with ease.

No packaging required: moving directories is as easy as
individual files.
WHAT DO YOU NEED?


A bittorrent client at the depositor's end. This is where the
files start.

A bittorrent client at the repository end. This is where the
files will appear.

A bittorrent tracker.
WHAT WE NOW KNOW

Bittorrent is a peer-to-peer network. The clients are peers, it
just happens that some have all the data ('seeders'), and
some are seeking data ('leechers'). Data is identified (very
roughly) using a hash of the content.

Clients need to find each other, and to do this they use
servers called 'trackers', the URLs of which are included in
torrent files. Trackers are pretty simple: you can contact
them to say 'I am interested in X', and find other clients
interested in X.
USING SWORD2 AND
BITTORRENT

Uploader opens bittorrent client, and creates a torrent file
for a file or directory.

The tracker used may be the repository itself.

SWORD deposit is made as usual, but the content is a
torrent file.

Content will be deposited.
IMPLEMENTATION

Tim has / is making EPrints a bittorrent tracker.

It will spot torrents uploaded via SWORD.

Uses transmission-cli to download.

Steve is making a deposit client.

Makes a torrent file, opens in torrent client, and uploads via
SWORD.
INTERESTING STUFF



This really helps with the other issue of large datasets:
downloading. I hope people will typically want individual
files, but this would allow full downloads without killing the
server.
MORE INTERESTING
STUFF


It's robust, and actually quite secure. You can't download
without the torrent file.

Can limit torrents to a particular tracker.

The tracker also provides basic usage information.
THE DISTRIBUTED
CONTENT STORE



The picture shifts from repositories holding data to data
being spread across the network.

Contenu connexe

Similaire à SWORD2 and Bittorrent

(130316) #fitalk bit torrent protocol
(130316) #fitalk   bit torrent protocol(130316) #fitalk   bit torrent protocol
(130316) #fitalk bit torrent protocolINSIGHT FORENSIC
 
Assignment #2 Lab Exercise – HTTP INT6143, Enterpr.docx
Assignment #2 Lab Exercise – HTTP   INT6143, Enterpr.docxAssignment #2 Lab Exercise – HTTP   INT6143, Enterpr.docx
Assignment #2 Lab Exercise – HTTP INT6143, Enterpr.docxdavezstarr61655
 
Bit torrent protocol by milan varia
Bit torrent protocol by milan variaBit torrent protocol by milan varia
Bit torrent protocol by milan variaMilan Varia
 
Wifi Security, or Descending into Depression and Drink
Wifi Security, or Descending into Depression and DrinkWifi Security, or Descending into Depression and Drink
Wifi Security, or Descending into Depression and DrinkSecurityTube.Net
 
Lightweight Deposit using SWORD
Lightweight Deposit using SWORDLightweight Deposit using SWORD
Lightweight Deposit using SWORDAdrian Stevenson
 
Module 3 - How SWORD Works
Module 3 - How SWORD WorksModule 3 - How SWORD Works
Module 3 - How SWORD WorksSWORD Project
 
02 wireshark http-sept_15_2009
02   wireshark http-sept_15_200902   wireshark http-sept_15_2009
02 wireshark http-sept_15_2009Vothe Dung
 
How does internet works
How does internet worksHow does internet works
How does internet worksRamonNavarro46
 
Bit torrent protocol
Bit torrent protocolBit torrent protocol
Bit torrent protocolD bipul lomga
 
Unit8 java
Unit8 javaUnit8 java
Unit8 javamrecedu
 
Interoperability Fundamentals: SWORD 2
Interoperability Fundamentals: SWORD 2Interoperability Fundamentals: SWORD 2
Interoperability Fundamentals: SWORD 2Adrian Stevenson
 
Introduction to the Bittorrent Protocol
Introduction to the Bittorrent ProtocolIntroduction to the Bittorrent Protocol
Introduction to the Bittorrent Protocoltmont
 
Will “web3://” Replace “http://”?– A Guide About Web 3.0 URL and ERC- 4804 To...
Will “web3://” Replace “http://”?– A Guide About Web 3.0 URL and ERC- 4804 To...Will “web3://” Replace “http://”?– A Guide About Web 3.0 URL and ERC- 4804 To...
Will “web3://” Replace “http://”?– A Guide About Web 3.0 URL and ERC- 4804 To...madelyn nora
 

Similaire à SWORD2 and Bittorrent (20)

Bittorrent
BittorrentBittorrent
Bittorrent
 
(130316) #fitalk bit torrent protocol
(130316) #fitalk   bit torrent protocol(130316) #fitalk   bit torrent protocol
(130316) #fitalk bit torrent protocol
 
Assignment #2 Lab Exercise – HTTP INT6143, Enterpr.docx
Assignment #2 Lab Exercise – HTTP   INT6143, Enterpr.docxAssignment #2 Lab Exercise – HTTP   INT6143, Enterpr.docx
Assignment #2 Lab Exercise – HTTP INT6143, Enterpr.docx
 
Bit torrent protocol by milan varia
Bit torrent protocol by milan variaBit torrent protocol by milan varia
Bit torrent protocol by milan varia
 
Wifi Security, or Descending into Depression and Drink
Wifi Security, or Descending into Depression and DrinkWifi Security, or Descending into Depression and Drink
Wifi Security, or Descending into Depression and Drink
 
BitTorrent
BitTorrentBitTorrent
BitTorrent
 
Lightweight Deposit using SWORD
Lightweight Deposit using SWORDLightweight Deposit using SWORD
Lightweight Deposit using SWORD
 
Module 3 - How SWORD Works
Module 3 - How SWORD WorksModule 3 - How SWORD Works
Module 3 - How SWORD Works
 
Bit torrent and tracker
Bit torrent and trackerBit torrent and tracker
Bit torrent and tracker
 
02 wireshark http-sept_15_2009
02   wireshark http-sept_15_200902   wireshark http-sept_15_2009
02 wireshark http-sept_15_2009
 
How does internet works
How does internet worksHow does internet works
How does internet works
 
Bit torrent protocol
Bit torrent protocolBit torrent protocol
Bit torrent protocol
 
Http_Protocol.pptx
Http_Protocol.pptxHttp_Protocol.pptx
Http_Protocol.pptx
 
Bittorrent
BittorrentBittorrent
Bittorrent
 
Web server
Web serverWeb server
Web server
 
Ftp servlet
Ftp servletFtp servlet
Ftp servlet
 
Unit8 java
Unit8 javaUnit8 java
Unit8 java
 
Interoperability Fundamentals: SWORD 2
Interoperability Fundamentals: SWORD 2Interoperability Fundamentals: SWORD 2
Interoperability Fundamentals: SWORD 2
 
Introduction to the Bittorrent Protocol
Introduction to the Bittorrent ProtocolIntroduction to the Bittorrent Protocol
Introduction to the Bittorrent Protocol
 
Will “web3://” Replace “http://”?– A Guide About Web 3.0 URL and ERC- 4804 To...
Will “web3://” Replace “http://”?– A Guide About Web 3.0 URL and ERC- 4804 To...Will “web3://” Replace “http://”?– A Guide About Web 3.0 URL and ERC- 4804 To...
Will “web3://” Replace “http://”?– A Guide About Web 3.0 URL and ERC- 4804 To...
 

Dernier

Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 

Dernier (20)

Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 

SWORD2 and Bittorrent

  • 1. SWORD2 & BITTORRENT A Network Admin’s Worst Nightmare Tim Brody, Damian Steer, Sander van der Waal, Steve Welburn
  • 2. WHAT IS SWORD2? SWORD2 is a protocol for depositing stuff and its metadata with a repository. It's implemented as a profile of the Atom Publishing Protocol, which is roughly: Client GETs service document from server Client POSTs stuff for deposit and metadata to url mentioned in service document Server responds with 'created this at url'
  • 3. Client can GET url Client edit url content with PUT Client can DELETE url Atom originated in blogs, and SWORD2 essentially just expands the metadata used.
  • 4. THE PROBLEM WITH BIG DEPOSITS Big deposits take ages to transfer, which makes them suseptible to interruptions due to error, or simply boredom ('Oops, I closed my laptop...'). In itself that ought to be recoverable since HTTP supports partial uploads using the range header. However if you look at steps 2 and 3 above you may see a problem: Client POSTs stuff for deposit and metadata Server responds with 'created this at url'
  • 5. THE IDEA Send a reference to content via SWORD, rather than the content itself. We could use any number of schemes then, such as ftp, rsync or http. (HTTP will work fine this way around because the content has an identity and could be resumed) (Aside: it's also interesting that a repository could chose not to download, such as situations where the data is stored in a national subject repository)
  • 6. OR BITTORRENT Unlike rsync, ftp, or http, there are many 'server' implementations, with nice GUIs, for a variety of platforms in a number of languages. ('server' and 'client' labels aren't especially helpful with bittorrent) Handles partial downloading with ease. No packaging required: moving directories is as easy as individual files.
  • 7. WHAT DO YOU NEED? A bittorrent client at the depositor's end. This is where the files start. A bittorrent client at the repository end. This is where the files will appear. A bittorrent tracker.
  • 8. WHAT WE NOW KNOW Bittorrent is a peer-to-peer network. The clients are peers, it just happens that some have all the data ('seeders'), and some are seeking data ('leechers'). Data is identified (very roughly) using a hash of the content. Clients need to find each other, and to do this they use servers called 'trackers', the URLs of which are included in torrent files. Trackers are pretty simple: you can contact them to say 'I am interested in X', and find other clients interested in X.
  • 9. USING SWORD2 AND BITTORRENT Uploader opens bittorrent client, and creates a torrent file for a file or directory. The tracker used may be the repository itself. SWORD deposit is made as usual, but the content is a torrent file. Content will be deposited.
  • 10. IMPLEMENTATION Tim has / is making EPrints a bittorrent tracker. It will spot torrents uploaded via SWORD. Uses transmission-cli to download. Steve is making a deposit client. Makes a torrent file, opens in torrent client, and uploads via SWORD.
  • 11. INTERESTING STUFF This really helps with the other issue of large datasets: downloading. I hope people will typically want individual files, but this would allow full downloads without killing the server.
  • 12. MORE INTERESTING STUFF It's robust, and actually quite secure. You can't download without the torrent file. Can limit torrents to a particular tracker. The tracker also provides basic usage information.
  • 13. THE DISTRIBUTED CONTENT STORE The picture shifts from repositories holding data to data being spread across the network.

Notes de l'éditeur

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n