Skip to content

v3_CN_WebP2P

winlin edited this page Jan 6, 2022 · 7 revisions

HOME > CN > Web P2P

Note: åĶ‚æžœč§‰åū—Githubįš„WikičŪŋé—ŪåĪŠæ…ĒåŊäŧĨčŪŋé—Ū Gitee 镜像。

åūˆåĪšæœ‹å‹å…ģåŋƒSRSæ˜ŊåĶ有čŪĄåˆ’æ”Ŋ持RTMFPæ˜ŊåĶčŪĄåˆ’æ”Ŋ持P2Pčŋ™įŊ‡æ–‡įŦ čŊĶįŧ†äŧ‹įŧäš†SRS和P2Pįš„å…ģįģŧ。

Summary

我äŧŽæ‰€æŒ‡įš„P2Påđķ非侠įŧŸåŪĒæˆ·įŦŊP2Pįš„æ–đåžïžŒč­ŽåĶ‚ed2ké‚Ģį§åčŪŪ。我äŧŽį‰đ指äļ‰į§P2Pïžš

  1. Flash P2PïžšAdobeåž€å‘įš„P2PFlash播æ”ūå™Ļäđ‹é—īåŊäŧĨ乒į›ļP2P分äšŦ视éĒ‘ã€‚
  2. Android P2Pïžšį‰đ指Androidįš„Appįš„P2Pæ–đ垏AndroidäļŠHTML5äļåŊčƒ―åšP2P。
  3. IOS P2Pïžšį‰đ指IOSįš„Appįš„P2Pæ–đ垏IOSäļŠHTML5äļåŊčƒ―åšP2P。

čŋ™äļ‰į§P2Péƒ―æœ‰å‡ äļŠå…ąåŒį‚đïžš

  1. 及čŪĻčŪšæĩåŠ’ä―“čŒƒį•īįš„P2Pæ™Ū通文äŧķ和数æŪįš„P2Päļč€ƒč™‘。
  2. æĩåŠ’ä―“äž čū“ä―ŋį”Ļ通į”Ļ协čŪŪïžŒč­ŽåĶ‚flv、mp4或hls配合CDNåŪŒæˆP2P原始čĩ„æšįš„äž čū“ïžŒč€Œåđķéžæ‰€æœ‰įš„æ•°æŪéƒ―æ˜ŊP2Pį―‘įŧœį”Ļį§æœ‰åčŪŪäž čū“。
  3. å°―é‡éŋ免åŪ‰čĢ…éĒåĪ–æ’äŧķã€‚č­ŽåĶ‚FlashP2På°ąåœĻflash播æ”ūå™ĻäļŠč·‘åˆŦįš įŧ“flash朎čšŦå°ąæ˜ŊäļŠæ’äŧķ及需čĶé›†æˆASįš„SDKäļéœ€č́éĒåĪ–åŪ‰čĢ…ActiveXæĩč§ˆå™Ļ插äŧķã€‚č€ŒAndroid和IOSįš„P2P需čĶé›†æˆP2PįģŧįŧŸįš„SDK及需č́åŪ‰č̅商åŪķįš„AppïžŒč€Œäļéœ€čĶå†åŪ‰čĢ…äļ“é—Ļį”ĻæĨ做P2Pįš„App。

įŧžä‰€čŋ°ïžŒæˆ‘äŧŽåŊäŧĨ将Flash/Android/IOS P2Pįۀ᧰äļšWebP2P。äļ‹éĒčŪēWebP2Päļ€į§åŊčƒ―įš„įŧ“构äŧĨ及SRS和WebP2Pįš„å…ģįģŧ。

Structure

äļ€äļŠWebP2PįģŧįŧŸïžŒåŊäŧĨ包åŦäļ‹éĒ几äļŠįŧ“构

  1. åŪĒæˆ·įŦŊSDKïžšP2PįģŧįŧŸåŋ…éĄŧ提äū›åŪĒæˆ·įŦŊSDK集成åœĻ播æ”ūå™Ļæˆ–č€…Appäļ­ã€‚č­ŽåĶ‚FlashP2P提äū›įš„æ˜ŊASįš„åš“ïžŒAndroid提äū›įš„æ˜Ŋjavaįš„åš“ïžŒIOS提äū›ocįš„åš“ã€‚
  2. API调åšĶ集įūĪïžšP2PįģŧįŧŸåŋ…éĄŧæ”Ŋ持API调åšĶåžĨčĄĨDNSįš„äļčķģäŧĨ及提äū›P2PįģŧįŧŸéœ€čĶįš„éĒåĪ–æ•°æŪ。API调åšĶå°ąæ˜ŊSDKäšĪäš’įš„įŽŽäļ€äļŠåŽįŦŊåŪŒæˆčŪĪčŊã€å…ķäŧ–æœåŠĄå™Ļčĩ„æšįš„åˆ†é…ã€æĩäŋĄæŊ、åŪžæ—ķ调åšĶ。
  3. RTMFP集įūĪïžšæˆ–č€…į§°äļšåŸšįĄ€åčŪŪ集įūĪïžŒį”ąAPI调åšĶčŋ”回įŧ™SDKåŊį”Ļįš„æœåŠĄå™ĻåŪĒæˆ·įŦŊä―ŋį”ĻRTMFPæœåŠĄå™ĻåŪŒæˆNAT打æīžïžŒäŧĨ及åŋ…čĶįš„æ•°æŪäž čū“。
  4. Tracker集įūĪïžšæˆ–č€…į§°äļšäž™äžīå‘įŽ°åčŪŪ集įūĪïžŒį”ąAPI调åšĶčŋ”回įŧ™SDKåŊį”Ļįš„æœåŠĄå™ĻåŪĒæˆ·įŦŊ向TrackerčŊ·æą‚åŊį”Ļįš„äž™äžī节į‚đ。
  5. Pingback集įūĪïžšæˆ–č€…į§°äļšåŪžæ—ķ数æŪ集įūĪïžŒį”ąAPI调åšĶčŋ”回įŧ™SDKåŊį”Ļįš„æœåŠĄå™Ļåđķæäū›įŧ™API调åšĶ集įūĪ调åšĶįš„åŪžæ—ķ数æŪäūæŪSDK向Pingback集įūĪæą‡æŠĨåŪžæ—ķ数æŪ。
  6. æĩåŠ’ä―“æšįŦ™é›†įūĪïžšæˆ–č€…į§°äļšæĩåŠ’ä―“æšïžŒäļŧč́čīŸčīĢæĩåŠ’ä―“æ•°æŪįš„į”ŸæˆïžŒå’ŒCDNåŊđæŽĨïžŒį”ąAPI调åšĶčŋ”回įŧ™SDKåŊį”Ļįš„CDNčūđįž˜åœ°å€ã€‚

åŊäŧĨåœĻSRSåŸšįĄ€äļŠåŪŒæˆįš„įŧ“æž„æ˜ŊïžšæĩåŠ’ä―“æšįŦ™é›†įūĪ、RTMFP集įūĪ。å…ķäŧ–åΧåΚæ˜ŊHTTP协čŪŪäļŧč́æ˜ŊP2PįģŧįŧŸå†…éƒĻįš„įŪ—æģ•å’Œé€ŧčū‘åĪ„į†ïžŒé€‚åˆä―ŋį”ĻPythonæˆ–č€…GOåŪžįŽ°ã€‚

åĶåĪ–ïžŒPingback集įūĪ需čĶæäū›10į§’įš§åˆŦįš„įģŧįŧŸæ•°æŪä―ŋį”ĻGOæˆ–č€…Sparkéƒ―åŊäŧĨ数æŪ量小æ—ķį”ĻGOåŪžįŽ°äđŸåŊäŧĨ数æŪ量åūˆåΧæ—ķåŊäŧĨį”ĻSpark。

äļ‹éĒčŊĶįŧ†åˆ†æžSRSåœĻWebP2Päļ­įš„ä―į―Ū和įŠķ态。

SRS for WebP2P

回čŋ‡åĪīæĨčŊīSRSįŽ°åœĻå·ēįŧæ”Ŋ持WebP2Päļ­įš„æĩåŠ’ä―“æšįŦ™é›†įūĪ和RTMFP集įūĪ䚆吗SRSæ”Ŋ持䚆æĩåŠ’ä―“æšįŦ™é›†įūĪïžŒä―†æ˜ŊRTMFP集įūĪäļæ”Ŋ持。

æ‰€č°“SRSæ”Ŋ持䚆æĩåŠ’ä―“æšįŦ™é›†įūĪïžŒæŒ‡įš„æ˜ŊSRSčƒ―čū“凚äļ€į§HLSïžŒčƒ―įŽĶ合äļ€į§P2PįģŧįŧŸįš„čĶæą‚ã€‚čŋ™į§P2PįģŧįŧŸå°ąæ˜Ŋ观æ­Ē创æƒģįš„P2PįģŧįŧŸïžŒå…·ä―“å‚č€ƒBravoP2P。äđŸå°ąæ˜ŊčŊīč‹Ĩä―ŋį”ĻSRSä―œäļšæ‚Ļįš„æĩåŠ’ä―“æœåŠĄå™Ļæ˜ŊåŊäŧĨį›īæŽĨåŊđæŽĨåˆ°č§‚æ­Ēįš„P2PįģŧįŧŸįš„åŊäŧĨįŧ™įŽ°æœ‰įš„HLSæĩåŠ äļŠP2PåŠŸčƒ―ã€‚

SRSäļšä―•äļæ”Ŋ持RTMFP集įūĪå‘Ē有几äļŠåŽŸå› ïžš

  1. RTMFPæ˜Ŋ观æ­Ē同䚋åŪŒæˆįš„įž–į ïžŒäŧĢį æ‰€æœ‰æƒåąžäšŽå…Žåļæ˜ŊåĶåž€æšį”ąå…Žåļå†ģåŪšã€‚
  2. RTMFP和SRSįš„å·Ūåž‚åĪŠåĪ§ïžŒå°ąįŪ—æ”Ŋ持䚆RTMFP集įūĪčŋ˜åŠæ˜ŊP2PįģŧįŧŸįš„六分äđ‹äļ€ïžŒæēĄæģ•į”Ļčĩ·æĨ。
  3. SRSįš„į›Ū标æ˜Ŋ提äū›é€šį”Ļæ–đæĄˆïžŒSRS3įš„Dragon技æœŊSRS4åŊđæŽĨSparkį›Ū前čŋ˜æēĄæœ‰æ”Ŋ持P2PįģŧįŧŸįš„čŪĄåˆ’ïžŒP2PįģŧįŧŸé‡ŒéĒåūˆåΚæ˜Ŋį§æœ‰æ–đæĄˆã€‚

因æ­ĪåœĻįŽ°åœĻįš„č·Ŋįšŋå›ūäū‹åĶ‚SRS3éĒ„čŪĄ2016åđī发åļƒïž‰å’ŒSRS4éĒ„čŪĄ2017åđī发åļƒïž‰įš„č·Ŋįšŋå›ūäļ­ïžŒéƒ―æēĄæœ‰RTMFPįš„å―ąå­ã€‚

äđŸå°ąæ˜ŊčŊīåœĻWebP2PįģŧįŧŸäļ­ïžŒSRS及čŪĄåˆ’æ”Ŋ持æĩåŠ’ä―“æšįŦ™åŠŸčƒ―。äļ‹éĒåˆ†åž€įœ‹įœ‹å„į§WebP2PįģŧįŧŸã€‚

Flash P2P

FlashP2Pæ˜Ŋį”ąAdobeį ”å‘įš„P2P协čŪŪïžŒåŒ…æ‹ŽæĄæ‰‹ã€NAT打æīžã€æ•°æŪäž čū“Adobeæ”ķčī­äš†äļ€åŪķ做P2Pįš„å…Žåļ将čŋ™äļŠRTMFP协čŪŪ集成到䚆Flashäļ­ã€‚

FlashP2PåœĻPCäļŠįš„åūˆæˆį†Ÿäš†ïžŒįĻģåŪšæ€§äđŸåŊäŧĨčūū到商į”Ļįš„čĶæą‚ã€‚äŧŽ2013åđī垀始æ”Ŋ持FlashP2Pįš„å…ŽåļäđŸåž€å§‹įē—įŽ°ïžŒįŽ°åœĻ后čŊīčŋ‡åå­—įš„æœ‰ïžšč§‚æ­Ē创æƒģ䚑成䚒åŠĻå…Ŧį™ū里䚑åļ†į­‰į­‰ã€‚

Android P2P

Androidæ‰‹æœšã€į›’å­å’ŒPadäļŠéĒæ”Ŋ持P2Pčŋ™äļŠį›Ū前čŋ˜åœĻå‘åą•äļ­ã€‚

IOS P2P

IOS手朚和PadäļŠéĒæ”Ŋ持P2Pčŋ™äļŠéšūåšĶæŊ”AndroidP2Pčŋ˜åĪ§ïžŒį›Ū前æēĄæœ‰æķˆæŊ。

Challenge

äļŠéĒčŪēäš†å„į§WebP2Pįš„æƒ…å†ĩWebP2Pįš„æŒ‘æˆ˜æœ‰äŧĨäļ‹å‡ į‚đïžš

  1. č―ŽæĒ思įŧīåŊđæŽĨCDNïžšCDNæœ€æƒ§æ€•įš„å°ąæ˜ŊWebP2På…Žåļäļæ˜ŊčĶåˆ†äŧ–æĩé‡é‚ĢäđˆįŪ€å•ïžŒč€Œæ˜ŊåŊđæŽĨčĩ·æĨၰåļļį—›č‹Ķ。æŪčŊ‰įš„FlashP2PįģŧįŧŸïžŒåū—åœĻCDNæŊäļŠčūđįž˜čŠ‚į‚đéƒĻį―翜åŠĄå™Ļ因äļšæĩåŠ’ä―“åˆ‡į‰‡äļé€šį”Ļčŋ™äļæ˜Ŋč́CDNįš„å‘―äđˆïžŸå› æ­ĪéĶ–å…ˆæœ€åĪ§įš„æŒ‘æˆ˜å°ąæ˜Ŋč―ŽæĒäļšäš’č”į―‘æ€įŧīïžŒå°―é‡ä―ŋį”Ļ通į”Ļæ–đæĄˆïžŒčŪĐCDNįˆ―äš†WebP2PįģŧįŧŸæ‰čƒ―įˆ―ã€‚
  2. äŋčŊæĩį•…åšĶïžšäž įŧŸP2PåŊäŧĨæš‚åœįž“å†ēäļŠå‡ äļŠå°æ—ķïžŒč€ŒWebP2Pį›ī播æ­ĢåœĻčŋ›čĄŒæ—ķïžŒįž“å†ēäļŠå‡ æŽĄį”Ļæˆ·å°ąåˆ·æ–°éĄĩéĒčŋ™äļŠP2P节į‚đå°ąį›ļå―“äšŽį‰šį‰ē䚆。因æ­ĪäŋčŊæĩį•…åšĶæ‰čƒ―äŋčŊåˆ†äšŦįŽ‡ïžŒåĶ‚ä―•äŋčŊæĩį•…åšĶå‘Ēčŋ™äļŠå°ąå„æ˜ūįĨžé€šäš†ã€‚
  3. åŪžæ—ķ调åšĶïžšWebP2Pįš„å˜åŒ–éžåļļåŋŦïžŒæœ‰įš„į”Ļ户刷新éĄĩéĒå•ĶïžŒæœ‰įš„įģŧįŧŸæ‹–åŠĻå•ĶïžŒæœ‰įš„čŋ˜æš‚åœïžŒæœ‰įš„å°ąå–œæŽĒäđąį‚đ。因æ­Īæ•īäļŠWebP2Pįš„čŠ‚į‚đäŋĄæŊéƒ―æ˜Ŋ变化åūˆåŋŦįš„ïžŒčŋ™åŊđåŪžæ—ķ分析įģŧįŧŸæœ‰éžåļļåĪ§įš„æŒ‘æˆ˜ã€‚
  4. čīŸč――å‡čĄĄå’Œįƒ­åĪ‡ïžšWebP2Pįš„é›†įūĪäđŸéœ€č́čīŸč――å‡čĄĄïžŒč­ŽåĶ‚RTMFP协čŪŪå°ąæ”Ŋ持Redirectæ–đ垏åŊäŧĨåŪžįŽ°čīŸč――å‡čĄĄå’Œįƒ­åĪ‡ã€‚äž įŧŸP2PįģŧįŧŸæŒ‚æŽ‰åŽčŠ‚į‚đå°ąæēĄæģ•įœ‹č§†éĒ‘ïžŒč€Œäļ€äļŠWebP2PįģŧįŧŸæŒ‚掉后äūį„ķčƒ―įœ‹ïžŒå› äļšæœ‰CDNåœĻé‚Ģ里å‘ĒïžŒä―†æ˜ŊåļĶåŪ―å°ąåž€å§‹éĢ™å‡äš†ã€‚č€ŒP2PįģŧįŧŸįš„æĒåĪéœ€č́čūƒé•ŋæ—ķé—ī因æ­Īåŋ…éĄŧä―ŋį”ĻჭåĪ‡ïžŒåœĻå‡šįŽ°é—Ūéǘæ—ķ切æĒ到æ­Ģåļļįš„įģŧįŧŸã€‚

čŋ™äš›æŒ‘æˆ˜éƒ―æ˜Ŋ我äŧŽæ›ūįŧé‡åˆ°įš„čŋ˜åŒ…拎æēĄæœ‰é‡åˆ°įš„。

BuyService OR Develop

åŊđ䚎æƒģį”ĻWebP2PčŠ‚įœåļĶåŪ―įš„æœ‹å‹ïžŒåŊžč‡īæ˜Ŋä―ŋį”Ļ商ä–đæĄˆïžŒčŋ˜æ˜Ŋč‡Šå·ąåž€å‘å‘Ē

我åŊäŧĨį”Ļå‘ĻæœŦįš„æ—ķé—īäŋčŊSRSäļ€åđīäļ€äļŠį‰ˆæœŽïž›ä―†æˆ‘å’Œæˆ‘įš„åŒäš‹äļ€åĪĐäŧŽæ—Đ到晚äļĪåđīæ—ķé—ī才做åیWebP2PįģŧįŧŸįŽŽäļ€äļŠį‰ˆæœŽã€‚åĶ‚æžœä― įš„å›Ē队å…Ļ职äļ€åđī做äļ€äļŠSRSéƒ―æœ‰å›°éšūįš„čŊïžŒåŧščŪŪåΧåŪķäļčĶč‡Šå·ąåž€å‘WebP2PïžŒč€Œæ˜Ŋä―ŋį”Ļčŋ™äš›å…Žåļįš„WebP2Päš‘æœåŠĄïž›åšäŧ€äđˆéƒ―åŧščŪŪä― äļčĶå’Œæˆ‘åšåŒæ ·įš„äļœčĨŋïžˆį‹‚åĶ„įš„įŽ‘ïžŒå“ˆå“ˆïž‰ã€‚

äŧĨäļŠåŸšæœŽä˜Ŋ我所įŸĨé“įš„WebP2P。

Winlin 2015.5

Welcome to SRS wiki!

SRS 5.0 wiki

Please select your language:

SRS 4.0 wiki

Please select your language:

SRS 3.0 wiki

Please select your language:

SRS 2.0 wiki

Please select your language:

SRS 1.0 wiki

Please select your language:

Clone this wiki locally