These slides summarise the 0-RTT converters that were proposed in the IETF MPTCP working group to aid the deployment of Multipath TCP. Additional details are available in https://www.ietf.org/internet-drafts/draft-bonaventure-mptcp-converters-01.txt
Keynote given at DRCN2018, shows that innovation is back in the transport and network layer with a description of Multipath TCP, QUIC and IPv6 Segment Routing.
These slides summarise the 0-RTT converters that were proposed in the IETF MPTCP working group to aid the deployment of Multipath TCP. Additional details are available in https://www.ietf.org/internet-drafts/draft-bonaventure-mptcp-converters-01.txt
Keynote given at DRCN2018, shows that innovation is back in the transport and network layer with a description of Multipath TCP, QUIC and IPv6 Segment Routing.
Slides supporting the "Computer Networking: Principles, Protocols and Practice" ebook. The slides can be freely reused to teach an undergraduate computer networking class using the open-source ebook.
Presentation given at MPLS+SDN+NFVWORLD 2019 in Paris that shows how network architects can leverage the support for IPv6 Segment that is included in the Linux kernel to develop new end-to-end services that use IPv6 Segment Routing on clients, routers and servers.
Overview of RARP, BOOTP, DHCP and PXE protocols for dynamic IP address assignment.
Dynamic IP address assignment to a host (or interface) is a common problem in TCP/IP based networks.
Manual and static assignment of IP addresses does not scale well and becomes a labor intensive task with a growing number of hosts.
An early approach for dynamic IP address assignment was RARP (Reverse ARP) which ran directly on the Ethernet protocol layer.
The many problems of RARP such as the inability to be routed between subnets were solved with BOOTP (Bootstrap Protocol).
BOOTP, however, ended to have its own set of limitations like lack of a lease time for IP addresses.
DHCP (Dynamic Host Configuration Protocol) was therefore defined as an extension to BOOTP.
DHCP is backward compatible with BOOTP thus allowing some degree of interoperability between the 2 protocols.
The state-of-the-art protocol for dynamic IP address assignment is, however, is DHCP.
DHCPv6 is an adaption of DHCP for IPv6 based networks.
Surf Communication Solutions provides of MoP (Media over Packet) Triple Play (Voice, Video, and Modem/Fax/Data) conversion solutions to communication equipment manufacturers. These solutions are provided in various integration levels: DSP software ; PTMC boards; DSP hardware/software; and PCI boards. http://www.surf-com.com
CMAF live Ingest protocol and DASH live ingest as developed by DASH Industry forum for uplink (push based) CMAF, DASH and HLS. With CMAF live ingest you can upload CMAF content and archive it or package it on the fly to HLS and/or DASH
Slides supporting the "Computer Networking: Principles, Protocols and Practice" ebook. The slides can be freely reused to teach an undergraduate computer networking class using the open-source ebook.
Presentation given at MPLS+SDN+NFVWORLD 2019 in Paris that shows how network architects can leverage the support for IPv6 Segment that is included in the Linux kernel to develop new end-to-end services that use IPv6 Segment Routing on clients, routers and servers.
Overview of RARP, BOOTP, DHCP and PXE protocols for dynamic IP address assignment.
Dynamic IP address assignment to a host (or interface) is a common problem in TCP/IP based networks.
Manual and static assignment of IP addresses does not scale well and becomes a labor intensive task with a growing number of hosts.
An early approach for dynamic IP address assignment was RARP (Reverse ARP) which ran directly on the Ethernet protocol layer.
The many problems of RARP such as the inability to be routed between subnets were solved with BOOTP (Bootstrap Protocol).
BOOTP, however, ended to have its own set of limitations like lack of a lease time for IP addresses.
DHCP (Dynamic Host Configuration Protocol) was therefore defined as an extension to BOOTP.
DHCP is backward compatible with BOOTP thus allowing some degree of interoperability between the 2 protocols.
The state-of-the-art protocol for dynamic IP address assignment is, however, is DHCP.
DHCPv6 is an adaption of DHCP for IPv6 based networks.
Surf Communication Solutions provides of MoP (Media over Packet) Triple Play (Voice, Video, and Modem/Fax/Data) conversion solutions to communication equipment manufacturers. These solutions are provided in various integration levels: DSP software ; PTMC boards; DSP hardware/software; and PCI boards. http://www.surf-com.com
CMAF live Ingest protocol and DASH live ingest as developed by DASH Industry forum for uplink (push based) CMAF, DASH and HLS. With CMAF live ingest you can upload CMAF content and archive it or package it on the fly to HLS and/or DASH
Surf Communication Solutions provides of MoP (Media over Packet) Triple Play (Voice, Video, and Modem/Fax/Data) conversion solutions to communication equipment manufacturers. These solutions are provided in various integration levels: DSP software ; PTMC boards; DSP hardware/software; and PCI boards. http://www.surf-com.com
Spectra Operating Environment (OE) - Setting a new standard for high performance SCA compliant radio development.
A presentation about the SCA Operating Environment, requirements, a business case for COTS OE & an introduction to Spectra OE and its benefits, performance & complementary products.
Application Visibility and Experience through Flexible NetflowCisco DevNet
The world of applications is changing rapidly in the enterprise; from the way applications are increasingly hosted in the cloud, the diverse nature of apps and to the way they are consumed by many devices. The need for organizations and network administrators is to focus on "Fast IT" - "Innovation in the Enterprise" is growing, which means having to spend less time on daily operations, maintenance and troubleshooting and more time on delivering business value with newer services. Cisco AVC with its NBAR2 technology is designed to detect applications and measure application performance through measuring round trip time, retransmission rates, jitter, delay, packet loss, MoS, URL statistics etc. Those details are transmitted using Flexible Netflow/IPFIX, so partners could leverage the data for application usage reporting, performance reporting and troubleshooting application issues to deliver best possible application experience.
Watch the DevNet 2047 replay from the Cisco Live On-Demand Library at: https://www.ciscolive.com/online/connect/sessionDetail.ww?SESSION_ID=92664&backBtn=true
Check out more and register for Cisco DevNet: http://ow.ly/jCNV3030OfS
Learn about the IBM Flex System FC5172 2-port 16Gb FC Adapter. The IBM Flex System FC5172 2-port 16Gb FC Adapter enables high-speed access for IBM Flex System compute nodes to connect to a Fibre Channel storage area network (SAN). This adapter is based on the proven QLogic 16Gb ASIC design and works with the 8 Gb and 16 Gb IBM Flex System Fibre Channel switches and pass-thru modules. For more information on Pure Systems, visit http://ibm.co/18vDnp6.
Visit the official Scribd Channel of IBM India Smarter Computing at http://bit.ly/VwO86R to get access to more documents.
Multi-cluster Kubernetes Networking- Patterns, Projects and GuidelinesSanjeev Rampal
Talk presented at Kubernetes Community Day, New York, May 2024.
Technical summary of Multi-Cluster Kubernetes Networking architectures with focus on 4 key topics.
1) Key patterns for Multi-cluster architectures
2) Architectural comparison of several OSS/ CNCF projects to address these patterns
3) Evolution trends for the APIs of these projects
4) Some design recommendations & guidelines for adopting/ deploying these solutions.
This 7-second Brain Wave Ritual Attracts Money To You.!nirahealhty
Discover the power of a simple 7-second brain wave ritual that can attract wealth and abundance into your life. By tapping into specific brain frequencies, this technique helps you manifest financial success effortlessly. Ready to transform your financial future? Try this powerful ritual and start attracting money today!
ER(Entity Relationship) Diagram for online shopping - TAEHimani415946
https://bit.ly/3KACoyV
The ER diagram for the project is the foundation for the building of the database of the project. The properties, datatypes, and attributes are defined by the ER diagram.
1.Wireless Communication System_Wireless communication is a broad term that i...JeyaPerumal1
Wireless communication involves the transmission of information over a distance without the help of wires, cables or any other forms of electrical conductors.
Wireless communication is a broad term that incorporates all procedures and forms of connecting and communicating between two or more devices using a wireless signal through wireless communication technologies and devices.
Features of Wireless Communication
The evolution of wireless technology has brought many advancements with its effective features.
The transmitted distance can be anywhere between a few meters (for example, a television's remote control) and thousands of kilometers (for example, radio communication).
Wireless communication can be used for cellular telephony, wireless access to the internet, wireless home networking, and so on.
1. DASH-IF Live Ingest
Protocol
Status update of the DASH-IF Live
Media Ingest protocol
DASH-Industry Forum 9th of October
2020, special session
Rufael Mekuria (PhD), Jamie Fletcher
2. Streaming Architecture: ingest in HTTP territory
Encoder Origin CDNPackager
DRM Client
Content Encoding Content Preparation
Content Delivery
CPIX
Key Exchange
HLS/
DASH
HLS/DASH
MPD
proxy
MPEG-2 TS
SDI
Smpte ST 2110
mpd
enhancement
at the edge
profiles
DASH/HLS
* Based on DASH-IF architecture for low latency
Ingest interface 1 Ingest interface 2
Content distribution
3. Why a new protocol for live ingest ?
RTMP/Smooth becoming deprecated (no HEVC, VVC, HDR, CMAF, MPEG-H)
Fmp4/CMAF becoming the dominant media segment format for OTT
-> CMAF ingest makes sense
Push Based DASH and HLS are common but under specified -> spec needed
Timed metadata & content splice information -> enable JITP & ad Insertion
Fault tolerance, low latency and redundancy for large scale streaming
(requires encoder synchronization)
Industry Convergence, document current best practices
4. Requirements DASH-IF Live ingest
https://github.com/unifiedstreaming/fmp4-ingest/blob/master/archive/requirements.md
General Requirements (G)
•fMP4 ingest shall use clock synchronization between streams, preferably based on UTC timestamps form the original (e.g. SDI) signal
•fMP4 ingest shall be based on MPEG technologies and container formats
•fMP4 ingest shall support low latency media source ingest
•fMP4 shall support redundant robust workflows with multiple sources and multiple processing entities/publishing points
•fMP4 ingest shall be supported by an openly available reference implementation
// added by me to make it more clear that live ingest needs to support active media processing and not only pass through
•fMP4 ingest shall support further media processing in the cloud or network for value added presentations
•fMP4 ingest shall support re-encryption, content stitching, live to VoD conversion, graphics overlay processing based on accurate timing information downstream
•fMP4 ingest shall support re-generation of the manifest at the publishing point or source node to support different streaming protocols and personalized presentations.
•fMP4 ingest shall decouple the delivery between the live encoder and the processing node from the processing node and the client
•fMP4 ingest shall support ingesting to content delivery networks operating in pass through mode
•fMP4 ingest shall support ingesting to active media processing origins that perform active media processing
Requirements for source media content (S)
•fMP4 ingest specification shall support ingest of MPEG-H and MPEG-4 media including HEVC, AVC, AAC, MPEG-H
•fMP4 ingest specification shall support ingest of media in a media format following the fragmented MPEG-4 format containing moof and mdat boxes
•fMP4 ingest should support encrypted media content based on commonly deployed schemes such as specified in MPEG common encryption
•fMP4 shall support ingest of multiple tracks to accomodate for different languages, audio etc.
Requirements on ingest for timed meta data and auxiliary information (M)
•fMP4 ingest shall support timed meta data such as based on ID3 and SCTE-35, DASH e messages
•fMP4 ingest shall support ingest of captioning information
•fMP4 ingest shall support ingest information suitable to different streaming protocols such as MPEG DASH, Apple HLS and Microsoft Smooth
Requirements on ingest media transport protocol (P)
•fMP4 ingest shall support push based transmission of live stream events
•fMP4 ingest shall support reconnection procedure in case of a disconnect
•fMP4 ingest shall support secure connections
•fMP4 ingest shall support a method for authentication of the contributor
Requirements on media ingest deployments and workflows (W)
•fMP4 ingest spec shall specify failover and restart procedures to gracefully restart in case of failovers
•fMP4 ingest spec document shall specify best practices for media source redundancy and service redundancy (i.e. continuation of the live event after failure of media source or service node)
•fMP4 ingest specification shall support graceful teardown of ingest of live stream events
5. PULL versus PUSH in streaming
Origin
Server
HTTP POST a.mpd
HTTP POST rep1/rep1.init
HTTP POST rep1/seg1.mp4
HTTP GET rep1/rep1.init
DASH Ingest
Pull Based
HTTP GET a.mpd
(Live) ABR
encoder
Smart
Server
HTTP POST moov
HTTP POST moof + mdat
HTTP POST moof + mdat
.....
Fmp4 Ingest
Just in
Time
Packager
HTTP GET rep1/seg1.mp4
HTTP GET rep1/rep1.init
HTTP GET a.mpd
HTTP GET rep1/seg1.mp4
Push Based
(Live) ABR
encoder
DASH
Client
DASH
Client
Get the url right
6. Difficulties with PUSH based (HTTP POST + DASH)
- Under-specified
- How to handle upstream errors in (different origin/BaseURL must have the same
content!)
- Certain values like TimeShiftBuffer, availability times etc. may only be known at the origin
server
- Posting manifest changes to multiple encoders, avoiding race conditions, like different
origins having different manifests confusing a player
- When to delete the segment from the origin
- Detecting disconnects of the encoder (in case of short running post)
- See DASH as ingest format dash as ingest format issue
- So further specification is needed
7. Common Media Application Format (CMAF)
- https://www.iso.org/standard/71975.html
- Fragmented mpeg-4 based specification supported by Apple, Microsoft
- First edition published early 2018
- Potential sucessor of semi-proprietary ism[vat] formats developed for smooth streaming
- Potential to replace usage of MPEG-2 TS in HTTP Live Streaming
- Format was selected as the main intermediate for media in MPEG Network Based Media
Processing
- Supported by DASH and HLS clients
- Future proof ingest format avoid dependency on specific companies, codecs etc.
- Combination with HTTP POST would be a future proof media ingest protocol/format
- Media profiles developed through CTA and MPEG, allowing quick adoption of new codecs
through media profiles usage
8. DASH-IF Live Media Ingest Specification
(Nov 2018)
Supporting companies (initial):
10. Two interfaces defined for live media ingest
1. Interface 1: CMAF Ingest -> leverage the new CMAF specification
2. Interface 2: DASH/HLS Ingest -> document existing practice, not
excluding using the new CMAF specification
11. General shared ingest requirements
HTTPS, TLS client certificates, Basic authentication, Digest Auth
Harmonized error response codes over HTTP with the other ingest
interface for DASH/HLS
Typically the source resends the CMAF header and last fragment in case of
failure
The protocol is kept simple as a design requirement, however many aspects
that SHOULD be supported are included
12. DASH Ingest (interface 2)
Uniqueness by adding timestamps in the names
File extensions and mime types for media objects
source identification via a HTTP header
Upload order requirement
Relative path requirement
Source optionally also deletes content from origin (HTTP DELETE)
Short running post, URL of segments map to manifest
DASH and HLS modes specified
13. CMAF Ingest 1: basics
Origin
Packager
ABR
Encoder
HTTP POST Video1.cmfv
HTTP POST Video2.cmfv
HTTP POST audio1.cmfa
HTTP POST subt1.cmft
HTTP POST meta.cmfm
DASH/HLS/MSS
Long running HTTP POST request per track
or multiple short running POST request per track
Fragment boundary trigggers receiver, not POST request, at least one CMAF fragment per POST request
http://pub_point/channel1
14. CMAF Ingest 2: track requirements
CMAF tracks: video, audio, timed text, subtitle, timed metadata
One TCP connection per track, short running fixed length POST or
HTTP POST with chunked transfer encoding (no fixed length)
Continuity + increasing fragment timestamp and/or sequence number
Fmp4/CMAF fragment boundaries for retransmission and identification
New optional boxes introduced in CMAF and DASH (styp/emsg/prft)
Support for Low Latency and Ad insertion based workflows
Can support encoder synchronization and redundancy
15. CMAF ingest 3: Switching set signaling
Implicit (mandatory)
CMAF Switching set constraints (implicit and mandatory)
Defined by CMAF specification, identical boxes + content can be used to identify tracks in
switching sets
Explicit (recommended/optional)
Encoder generates switching ids for each unique switching set
Embed switching set id in post_uri by Switching(sw_id) keyword
Embed switching set id in kind box in udta
schemeIdUir urn:dashif:ingest:switchingset_id value = sw_idnd level
Optionally be a manifest (e.g. using DASH CMAF profile)
16. Redundancy and hot failover (I1)
Live Source 1 Live Source 2
Origin 1 Origin 2
CMAF ingestCMAF ingest
SDISDI
Clock
Sync.
Live Source 3#
new
1. Redundant ingest/cross post
2. Procedures for
starting new instance
(send new init segment)
3. Option to join in sync without
Explicit communication
DASH/HLS/SMOOTH DASH/HLS/SMOOTH
Contribution source
SDI
Encoder Synchronization
Fixed segment duration and fixed anchor
Segment Boundaries tfdt: Anchor + K * seg_dur
Anchor can be based on epoch or timestamps from
Input to encoder
Any encoder joining can start fragment boundary at
K *seg_dur + anchor as close to current time
All fragment boundaries are K*seg_dur + anchor generating
A shared CMAF/ISOBMFF timeline
Anchor
Fixed_segment
duration
17. Splice conditioning
SCTE-35 urn:scte:scte35:2013:bin embedded in event message track Presentation time corresponds to SCTE-35 splice point
CMAF content conditioning for splice point: insert IDR frame or fragment boundary (splice conditioned encoding or
packaging)
Document in DASH-IF ad insertion too
18. Reference Software interface 1
Live ingest of CMAF files using CMAF ingest profile C++ reference
https://github.com/unifiedstreaming/fmp4-ingest/tree/master/ingest-tools
fmp4Ingest (ingest cmaf files using CMAF ingest)
Tools for converting timed metadata track (still in progress)
File Based ingest, includes wvtt tracks, scte-35 tracks etc.
ACM publication (MMSys): https://dl.acm.org/doi/abs/10.1145/3339825.3394933
Demo with Unified Origin and Docker Compose
https://github.com/unifiedstreaming/cmaf-ingest-demo (cmaf ingest)
https://github.com/RufaelDev/live-demo/tree/cmaf_ingest (ffmpeg)
19. Interface 1 & @ ffmpeg Try it yourself !
• Both DASH ingest and CMAF ingest are in FFMPEG (work by fflabs), ffmpeg
can ingest CMAF and/or DASH to your origin server!
• Demonstration by fflabs: https://gitlab.com/fflabs (includes ffmpeg, origin
and command line shell script) and nginx/node.js
• Docker based demo CMAF ingest (interface 1) ffmpeg & Apache :
• https://github.com/unifiedstreaming/live-demo-cmaf
• Docker based demo CMAF ingest (interface 1) + multiple encoders:
• https://github.com/unifiedstreaming/live-demo-cmaf/tree/encoder_sync
• Docker based demo DASH/HLS ingest (interface 2) ffmpeg & Apache :
• https://github.com/unifiedstreaming/live-demo-cmaf/tree/dash_hls
21. Interface 1 & encoder sync demo
• Two encoders posting CMAF fragments (interface 1)
• Fixed segment duration, fixed anchor (e.g. epoch, UTC time)
• Encoder triggers segment boundary at each t = anchor + K * seg_dur with t being
close to current time and K a positive integer
• Use BaseMediaDecodeTime resulting in a shared ISOBMFF/CMAF timeline
• One encoder can fail and can then rejoin later using the same algorithm, resending
initialization segments and potentially resending some older segments (1-2), at anchor
+ N * seg_dur where N is a positive integer and close to now
Play this demo in your own environment:
• synched encoders
• Container id of encoder A is displayed
• When encoder A fails (is killed), the segment of the redundant encoder is used
• The container of encoder B is displayed
• Encoder can A rejoins, when redundant encoder fails is killed the new id will be
displayed
23. Open Issues Interface 1
By alligning to CMAF, missing features from CMAF are also
missing, some examples:
adding or removing a representation
Sequencing or presentations
Handling explicit gaps/sparsity (missing segments, sparse
segments), for example because of loss of input
But when these are addressed in CMAF it will be easy to
update the specification accordingly
24. Open Issues Interface 2
Having a good mapping between the manifest and media formats
URL generation recommendations (structure)
Redundancy/sync and race conditions
Include CMAF support
Recommending Using DASH CMAF profile might be a way forward