97¹ú¼Ê

¹¤³§ÑÐѧ Ø­ 97¹ú¼ÊÍøÂçÊý×Ö»¯ÖÇÄܹ¤³§¡°ºÚ¿Æ¼¼¡±´ó½ÒÃØ
Ô¤Ô¼Ö±²¥
ÀÖÏíÓªÒµ°ü¹Ü·þÎñ Ø­ ÊØ»¤Ò½ÁÆÓªÒµÒ»Á¬ÎȹÌ
Ô¤Ô¼Ö±²¥
97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾
²úÆ·
< ·µ»ØÖ÷²Ëµ¥
²úÆ·ÖÐÐÄ
²úÆ·
½â¾ö¼Æ»®
< ·µ»ØÖ÷²Ëµ¥
½â¾ö¼Æ»®ÖÐÐÄ
ÐÐÒµ
ºÏ×÷»ï°é
·µ»ØÖ÷²Ëµ¥
Ñ¡ÔñÇøÓò/ÓïÑÔ
97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾
97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾ 97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾

Èç×÷ÉõRDMA¹¹½¨ÎÞËðÍøÂç

¡¾RDMA¡¿±¾ÎÄÖ÷ÒªÏÈÈÝΪʲôÎÒÃÇÐèÒªRDMA£¿ÎªÊ²Ã´ÎÒÃÇÐèÒªÎÞËðÍøÂ磿ÕâЩÏȽøµÄÊÖÒÕÊÂʵÄܸøÎÒÃÇ´øÀ´Ê²Ã´ÀûÒæ£¿²¢ÏêϸÏÈÈÝÈç×÷ÉõRDMA¹¹½¨ÎÞËðÍøÂç¡£

  • 97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾

    Ðû²¼Ê±¼ä£º2018-09-12

  • 97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾

    µã»÷Á¿£º

  • 97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾

    µãÔÞ£º

·ÖÏíÖÁ

97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾
97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾
97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾

ÎÒÏë̸ÂÛ

ÎÒÃÇΪʲôÐèÒªÎÞËðÍøÂç

¿´¹ýÇ°Ãæ¼¸ÆÚµÄÊÖÒÕÎÄÕ £¬ÏàП÷È˶ÔRDMA(Remote Direct Memory Access £¬Ô¶³ÌÖ±½ÓÊý¾Ý´æÈ¡)ºÍÎÞËðÍøÂçÓÐÁËÒ»¶¨µÄÊìϤ £¬Ò²Ðí¸÷ÈË»áÎÊΪʲôÎÒÃÇÐèÒªRDMA£¿ÎªÊ²Ã´ÎÒÃÇÐèÒªÎÞËðÍøÂ磿ÕâЩÏȽøµÄÊÖÒÕÊÂʵÄܸøÎÒÃÇ´øÀ´Ê²Ã´ÀûÒæ£¿

Ö»´ÓÍøÂç²ãÃæÀ´¿´¿ÉÄÜÎÞ·¨µÃ³öÁîÈËÖª×ãµÄÃÕµ× £¬ÏÂÃæ»®·ÖÒÔǰ¶ËÓªÒµºÍºó¶ËÓ¦Óà £¬¼òÆÓö¾Ù¼¸¸öÀý×Ó £¬ÏàП÷ÈË¿ÉÒÔ´ÓÖн⿪ÒÉ»ó¡£

Ê×ÏÈÏë˵µÄÊÇ»¥ÁªÍøÖдó×ÚµÄÔÚÏßÓªÒµ £¬ÀýÈçÔÚÏßËÑË÷¡¢¹ºÎï¡¢Ö±²¥µÈ £¬ËüÐèÒªÒԷdz£¿ìµÄËÙÂÊ¶Ô¸ßÆµÂʵÄÓû§ÇëÇó×ö³öÓ¦´ð £¬Êý¾ÝÖÐÐÄÄÚÈκÎÒ»¸ö»·½Úµ¼ÖÂÑÓ³Ù £¬¶¼»á¶ÔÖÕ¶ËÓû§µÄ»á¼ûÌåÑéÔì³É¼«´óµÄÓ°Ïì £¬´Ó¶øÓ°ÏìÆäÁ÷Á¿¡¢¿Ú±®¡¢»îÔ¾Óû§µÈ¡£

 

ÉÐÓÐÔÚ»úеѧϰºÍAIµÄÊÖÒÕÇ÷ÊÆÏ £¬¶ÔÅÌËãÄÜÁ¦µÄÐèÇóÊdzʼ¸ºÎ¼¶ÊýÉÏÉýµÄ £¬ÎªÁËÖª×ãÈÕÒæÖØ´óµÄÉñ¾­ÍøÂçºÍÉî¶Èѧϰģ×Ó £¬Êý¾ÝÖÐÐĻᱣ´æ´ó×ÚµÄÂþÑÜʽÅÌË㼯Ⱥ £¬µ«´ó×Ú²¢ÐгÌÐòµÄͨѶÑÓ³Ù £¬Ôò»á¼«´óÓ°ÏìÕû¸öÅÌËãÀú³ÌµÄЧÂÊ¡£

ÁíÍâΪÏàʶ¾öÊý¾ÝÖÐÐÄÄÚ±¬Õ¨Ê½ÔöÌíµÄÊý¾Ý´æ´¢ºÍ¶ÁȡЧÂÊÎÊÌâ £¬Ê¹ÓÃÒÔÌ«ÍøÈÚºÏ×éÍøµÄÂþÑÜʽ´æ´¢Ô½À´Ô½Êܵ½»¶Ó­¡£µ«ÓÉÓÚ´æ´¢ÍøÂçÖÐÊý¾ÝÁ÷ÒÔ´óÏóÁ÷ΪÖ÷ £¬ÒÔÊÇÒ»µ©ÒòÓµÈûÔì³É¶ª°ü £¬½«»áÒý·¢´óÏóÁ÷ÖØ´« £¬²»µ«½µµÍЧÂÊ £¬»¹»á¼ÓÖØÓµÈû¡£

ÒÔÊÇÒÔǰ¶ËÓû§µÄÌåÑéºÍºó¶ËÓ¦ÓõÄЧÂÊÀ´¿´ £¬ÑÛϹØÓÚÊý¾ÝÖÐÐÄÍøÂçµÄÒªÇóÊÇ£ºÑÓ³ÙÔ½µÍÔ½ºÃ £¬Ð§ÂÊÔ½¸ßÔ½ºÃ¡£

ΪÁ˽µµÍÊý¾ÝÖÐÐÄÄÚ²¿ÍøÂçÑÓ³Ù £¬Ìá¸ß´¦Öóͷ£Ð§ÂÊ £¬RDMAÊÖÒÕÓ¦Ô˶øÉú £¬Í¨¹ýÔÊÐíÓû§Ì¬µÄÓ¦ÓóÌÐòÖ±½Ó¶ÁÈ¡ºÍдÈëÔ¶³ÌÄÚ´æ £¬¶øÎÞÐèCPU½éÈë¶à´Î¿½±´ÄÚ´æ £¬²¢¿ÉÈÆ¹ýÄÚºËÖ±½ÓÏòÍø¿¨Ð´Êý¾Ý £¬ÊµÏÖÁ˸ßÍÌÍÂÁ¿¡¢³¬µÍʱÑӺ͵ÍCPU¿ªÏúµÄЧ¹û¡£

Ä¿½ñRDMAÔÚÒÔÌ«ÍøÉϵĴ«ÊäЭÒéÊÇRoCEv2 £¬RoCEv2ÊÇ»ùÓÚÎÞÅþÁ¬Ð­ÒéµÄUDPЭÒé £¬Ïà±ÈÃæÏòÅþÁ¬µÄTCPЭÒé £¬UDPЭÒéÔ½·¢¿ìËÙ¡¢Õ¼ÓÃCPU×ÊÔ´¸üÉÙ £¬µ«Æä²»ÏñTCPЭÒéÄÇÑùÓ묶¯´°¿Ú¡¢È·ÈÏÓ¦´ðµÈ»úÖÆÀ´ÊµÏÖ¿É¿¿´«Êä £¬Ò»µ©·ºÆð¶ª°ü £¬ÒÀÀµÉϲãÓ¦Óüì²éµ½ÁËÔÙ×öÖØ´« £¬»á´ó´ó½µµÍRDMAµÄ´«ÊäЧÂÊ¡£

ÒÔÊÇÒªÏëʩչ³öRDMAÕæÕýµÄÐÔÄÜ £¬Í»ÆÆÊý¾ÝÖÐÐÄ´ó¹æÄ£ÂþÑÜʽϵͳµÄÍøÂçÐÔÄÜÆ¿¾± £¬ÊÆÐëҪΪRDMA´î½¨Ò»Ìײ»¶ª°üµÄÎÞËðÍøÂçÇéÐÎ £¬¶øÊµÏÖ²»¶ª°üµÄÒªº¦¾ÍÊǽâ¾öÍøÂçÓµÈû¡£

 

Ϊʲô»á±¬·¢ÓµÈû

±¬·¢ÓµÈûµÄÔµ¹ÊÔ­ÓÉÓÐÐí¶à £¬ÏÂ̦̾¾ÙÁËÔÚÊý¾ÝÖÐÐij¡¾°Àï½ÏÁ¿Òªº¦Ò²ÊǽÏÁ¿³£¼ûµÄÈýµãÔµ¹ÊÔ­ÓÉ£º

ÊÕÁ²±È

¾ÙÐÐÊý¾ÝÖÐÐÄÍøÂç¼Ü¹¹Éè¼ÆÊ± £¬´Ó±¾Ç®ºÍÊÕÒæÁ½·½ÃæÀ´Ë¼Á¿ £¬´ó¶¼»á½ÓÄɷǶԳƴø¿íÉè¼Æ £¬¼´ÉÏÏÂÐÐÁ´Â·´ø¿í·×ÆçÖ £¬½»Á÷»úµÄÊÕÁ²±È¼òÆÓ˵¾ÍÊÇ×ܵÄÊäÈë´ø¿í³ýÒÔ×ܵÄÊä³ö´ø¿í¡£ÒÔ97¹ú¼ÊÍòÕ×½»Á÷»úRG-S6220-48XS6QXS-HΪÀý £¬ÏÂÐпɹ©·þÎñÆ÷ÊäÈëµÄ´ø¿íÊÇ48*10G=480G £¬ÉÏÐÐÊä³öµÄ´ø¿íÊÇ6*40G=240G £¬Õû»úÊÕÁ²±ÈΪ2:1¡£¶ø25G½»Á÷»úRG-S6510-48VS8CQ £¬ÏÂÐпɹ©·þÎñÆ÷ÊäÈëµÄ´ø¿íÊÇ48*25G=1200G £¬ÉÏÐÐÊä³öµÄ´ø¿íÊÇ8*100G=800G £¬Õû»úÊÕÁ²±ÈÊÇ1.5:1¡£

Ò²¾ÍÊÇ˵ £¬µ±ÏÂÁªµÄ·þÎñÆ÷ÉÏÐз¢°ü×ÜËÙÂÊÁè¼ÝÉÏÐÐÁ´Â·×Ü´ø¿íʱ £¬¾Í»áÔÚÉÏÐпڷºÆðÓµÈû¡£

ECMP

Ä¿½ñÊý¾ÝÖÐÐÄÍøÂç¶à½ÓÄÉFabric¼Ü¹¹ £¬²¢½ÓÄÉECMPÀ´¹¹½¨¶àÌõµÈ¼Û¸ºÔØÆ½ºâµÄÁ´Â· £¬Í¨¹ýÉèÖÃÈŶ¯Òò×Ó²¢HASHÑ¡ÔñÒ»ÌõÁ´Â·À´×ª·¢ÊǼòÆÓµÄ £¬µ«Õâ¸öÀú³ÌÖÐȴûÓÐ˼Á¿µ½ËùÑ¡Á´Â·×Ô¼ºÊÇ·ñÓÐÓµÈû¡£ECMP²¢Ã»ÓÐÓµÈû¸ÐÖªµÄ»úÖÆ £¬Ö»Êǽ«Á÷ÊèÉ¢µ½²î±ðµÄÁ´Â·ÉÏת·¢ £¬¹ØÓÚÒѾ­±¬·¢ÓµÈûµÄÁ´Â·À´Ëµ £¬ºÜ¿ÉÄܼӾçÁ´Â·µÄÓµÈû¡£

TCP Incast

TCP IncastÊÇMany-to-OneµÄͨѶģʽ £¬ÔÚÊý¾ÝÖÐÐÄÔÆ»¯µÄ´óÇ÷ÊÆÏÂÕâÖÖͨѶģʽ¾­³£±¬·¢ £¬ÓÈÆäÊÇÄÇЩÒÔScale-Out·½·¨ÊµÏÖµÄÂþÑÜʽ´æ´¢ºÍÅÌËãÓ¦Óà £¬°üÀ¨Hadoop¡¢MapReduce¡¢HDFSµÈ¡£
ÀýÈç £¬µ±Ò»¸öParent ServerÏòÒ»×é½Úµã£¨·þÎñÆ÷¼¯Èº»ò´æ´¢¼¯Èº£©Ìᳫһ¸öÇëÇóʱ £¬¼¯ÈºÖеĽڵ㶼»áͬʱÊÕµ½¸ÃÇëÇó £¬²¢ÇÒÏÕЩͬʱ×ö³öÏìÓ¦ £¬Ðí¶à½ÚµãͬʱÏòһ̨»úе£¨Parent Server£©·¢ËÍTCPÊý¾ÝÁ÷ £¬´Ó¶ø±¬·¢ÁËÒ»¸ö“΢ͻ·¢Á÷” £¬Ê¹µÃ½»Á÷»úÉÏÅþÁ¬Parent ServerµÄ³ö¶Ë¿Ú»º´æÈ±·¦ £¬Ôì³ÉÓµÈû¡£

 

97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾

¡øTCP IncastÁ÷Á¿Ä£×Ó

 

ÕýÈçÇ°ÃæËù˵ £¬RDMAºÍTCP²î±ð £¬ËüÐèÒªÒ»¸öÎÞËðÍøÂç¡£¹ØÓÚͨË×µÄ΢ͻ·¢Á÷Á¿ £¬½»Á÷»úµÄBuffer»º³åÇø¿ÉÒÔÆðµ½Ò»¶¨×÷Óà £¬ÔÚ»º³åÇø½«Í»·¢µÄ±¨ÎľÙÐÐÅÅ¶ÓÆÚ´ý £¬µ«ÓÉÓÚÔöÌí½»Á÷»úBufferÈÝÁ¿µÄ±¾Ç®ºÜÊǸß £¬ÒÔÊÇËüËùÄÜÆðµ½µÄ×÷ÓÃÊÇÓÐÏÞµÄ £¬Ò»µ©»º³åÇøÅŶӵı¨ÎĹý¶à £¬ÈÔÈ»»á±¬·¢¶ª°ü¡£

ΪÁËʵÏֶ˵½¶ËµÄÎÞËðת·¢ £¬×èÖ¹ÓÉÓÚ½»Á÷»úÖеÄBuffer»º³åÇøÒç³ö¶øÒý·¢µÄÊý¾Ý°üɥʧ £¬½»Á÷»ú±ØÐèÒýÈëÆäËû»úÖÆ £¬ÈçÁ÷Á¿¿ØÖÆ £¬Í¨¹ý¶ÔÁ´Â·ÉÏÁ÷Á¿µÄ¿ØÖÆ £¬ïÔÌ­¶Ô½»Á÷»úBufferµÄѹÁ¦ £¬À´¹æ±Ü¶ª°üµÄ±¬·¢¡£

 

PFCÔõÑùʵÏÖÁ÷¿Ø

IEEE 802.1Qbb£¨Priority-based Flow Control £¬»ùÓÚÓÅÏȼ¶µÄÁ÷Á¿¿ØÖÆ£©¼ò³ÆPFC £¬ÊÇIEEEÊý¾ÝÖÐÐÄÇŽӣ¨Data Center Bridge£©Ð­Òé×åÖеÄÒ»¸öÊÖÒÕ £¬ÊÇÁ÷Á¿¿ØÖƵÄÔöÇ¿°æ¡£

 

˵PFC֮ǰ £¬ÎÒÃÇ¿ÉÒÔÏÈ¿´Ò»ÏÂIEEE 802.3X£¨Flow Control£©Á÷¿ØµÄ»úÖÆ£ºµ±ÎüÊÕÕßûÓÐÄÜÁ¦´¦Öóͷ£ÎüÊÕµ½µÄ±¨ÎÄʱ £¬ÎªÁ˱ÜÃⱨÎı»ÑïÆú £¬ÎüÊÕÕßÐèҪ֪ͨ±¨Îĵķ¢ËÍÕßÔÝʱ×èÖ¹·¢Ëͱ¨ÎÄ¡£

ÈçÏÂͼËùʾ £¬¶Ë¿ÚG0/1ºÍG0/2ÒÔ1GbpsËÙÂÊת·¢±¨ÎÄʱ £¬¶Ë¿ÚF0/1½«±¬·¢ÓµÈû¡£Îª×èÖ¹±¨ÎÄɥʧ £¬¿ªÆô¶Ë¿ÚG0/1ºÍG0/2µÄFlow Control¹¦Ð§¡£

97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾

¡ø¶Ë¿Ú±¬·¢ÓµÈûµÄ´òÁ÷Ä£×Ó

 

µ±F0/1ÔÚת·¢±¨ÎÄ·ºÆðÓµÈûʱ £¬½»Á÷»úB»áÔڶ˿ڻº³åÇøÖÐÅŶӱ¨ÎÄ £¬µ±ÓµÈûÁè¼ÝÒ»¶¨ãÐֵʱ £¬¶Ë¿ÚG0/2ÏòG0/1·¢PAUSEÖ¡ £¬Í¨ÖªG0/1ÔÝʱ×èÖ¹·¢Ëͱ¨ÎÄ¡£

G0/1ÎüÊÕµ½PAUSEÖ¡ºóÔÝʱ×èÖ¹ÏòG0/2·¢Ëͱ¨ÎÄ¡£ÔÝͣʱ¼äÊÇ·ÇÐÅÏ¢ÓÉPAUSEÖ¡ËùЯ´ø¡£½»Á÷»úA»áÔÚÕâ¸ö³¬Ê±¹æÄ£ÄÚÆÚ´ý £¬»òÕßÖ±µ½ÊÕµ½Ò»¸öTimeoutֵΪ0µÄ¿ØÖÆÖ¡ºóÔÙ¼ÌÐø·¢ËÍ¡£

IEEE 802.3XЭÒé±£´æÒ»¸öÈõµã£ºÒ»µ©Á´Â·±»ÔÝÍ£ £¬·¢ËÍ·½¾Í²»¿ÉÔÙ·¢ËÍÈκÎÊý¾Ý°ü £¬ÈôÊÇÊÇÓÉÓÚijЩÓÅÏȼ¶½ÏµÍµÄÊý¾ÝÁ÷Òý·¢µÄÔÝÍ£ £¬Ð§¹ûÈ´ÈøÃÁ´Â·ÉÏÆäËû¸ü¸ßÓÅÏȼ¶µÄÊý¾ÝÁ÷Ò²Ò»Æð±»ÔÝÍ£ÁË £¬×ÅʵÊǵò»³¥Ê§µÄ¡£

ÈçÏÂͼÖб¨ÎÄÆÊÎöËùʾ £¬PFCÔÚ»ù´¡Á÷¿ØIEEE 802.3X»ù´¡ÉϾÙÐÐÀ©Õ¹ £¬ÔÊÐíÔÚÒ»ÌõÒÔÌ«ÍøÁ´Â·ÉϽ¨Éè8¸öÐéÄâͨµÀ £¬²¢ÎªÃ¿ÌõÐéÄâͨµÀÖ¸¶¨ÏìÓ¦ÓÅÏȼ¶ £¬ÔÊÐíµ¥¶ÀÔÝÍ£ºÍÖØÆôÆäÖÐí§ÒâÒ»ÌõÐéÄâͨµÀ £¬Í¬Ê±ÔÊÐíÆäËüÐéÄâͨµÀµÄÁ÷Á¿ÎÞÖÐֹͨ¹ý¡£

 

97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾

¡øPFCЭÒ鱨ÎĽṹÆÊÎö

 

PFC½«Á÷¿ØµÄÁ£¶È´ÓÎïÀí¶Ë¿Úϸ»¯µ½8¸öÐéÄâͨµÀ £¬»®·Ö¶ÔÓ¦Smart NICÓ²¼þÉϵÄ8¸öÓ²¼þ·¢ËÍÐÐÁУ¨ÕâЩÐÐÁÐÃüÃûΪTraffic Class £¬»®·ÖΪTC0,TC1,...,TC7£© £¬ÔÚRDMA²î±ðµÄ·âװЭÒéÏ £¬Ò²Óвî±ðµÄÓ³Éä·½·¨¡£

RoCEv1

Õâ¸öЭÒéÊǽ«RDMAÊý¾Ý¶Î·â×°µ½ÒÔÌ«ÍøÊý¾Ý¶ÎÄÚ £¬ÔÙ¼ÓÉÏÒÔÌ«ÍøµÄÍ·²¿ £¬Òò´ËÊôÓÚ¶þ²ãÊý¾Ý°ü¡£ÎªÁ˶ÔËü¾ÙÐзÖÀà £¬Ö»ÄÜʹÓÃVLAN£¨IEEE 802.1q£©Í·²¿ÖеÄPCP(Priority Code Point)Óò3 BitsÀ´ÉèÖÃÓÅÏȼ¶Öµ¡£

 

97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾

¡ø¶þ²ãÒÔÌ«ÍøÖ¡VLANÍ·²¿½á¹¹

 

RoCEv2

Õâ¸öЭÒéÊǽ«RDMAÊý¾Ý¶ÎÏÈ·â×°µ½UDPÊý¾Ý¶ÎÄÚ £¬¼ÓÉÏUDPÍ·²¿ £¬ÔÙ¼ÓÉÏIPÍ·²¿ £¬×îºóÔÙ¼ÓÉÏÒÔÌ«ÍøÍ·²¿ £¬ÊôÓÚÈý²ãÊý¾Ý°ü¡£¶ÔËü¾ÙÐзÖÀà £¬¼È¿ÉÒÔʹÓÃÒÔÌ«ÍøVLANÖеÄPCPÓò £¬Ò²¿ÉÒÔʹÓÃIPÍ·²¿µÄDSCPÓò¡£

 

97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾

¡øÈý²ãIP±¨ÎÄÍ·²¿½á¹¹

 

¼òÆÓÀ´Ëµ £¬ÔÚ¶þ²ãÍøÂçµÄÇéÐÎÏ £¬PFCʹÓÃVLANÖеÄPCPλÀ´¶ÔÊý¾ÝÁ÷¾ÙÐÐÇø·Ö £¬ÔÚÈý²ãÍøÂçµÄÇéÐÎÏ £¬PFC¼È¿ÉÒÔʹÓÃPCP¡¢Ò²¿ÉÒÔʹÓÃDSCP £¬Ê¹µÃ²î±ðÊý¾ÝÁ÷¿ÉÒÔÏíÊܵ½×ÔÁ¦µÄÁ÷¿ØÖÆ¡£µ±ÏÂÊý¾ÝÖÐÐÄÒò¶à½ÓÄÉÈý²ãÍøÂç £¬Òò´ËʹÓÃDSCP±ÈPCP¸ü¾ßÓÐÓÅÊÆ¡£

 

PFCËÀËø

ËäÈ»PFCÄܹ»Í¨¹ý¸ø²î±ðÐÐÁÐÓ³Éä²î±ðÓÅÏȼ¶À´ÊµÏÖ»ùÓÚÐÐÁеÄÁ÷¿Ø £¬µ«Í¬Ê±Ò²ÒýÈëÁËеÄÎÊÌâ £¬ÀýÈçPFCËÀËøµÄÎÊÌâ¡£

PFCËÀËø £¬ÊÇÖ¸µ±¶à¸ö½»Á÷»úÖ®¼äÒò΢»·Â·µÈÔµ¹ÊÔ­ÓÉͬʱ·ºÆðÓµÈû,¸÷×Զ˿ڻº´æÏûºÄÁè¼ÝãÐÖµ £¬¶øÓÖÏ໥ÆÚ´ý¶Ô·½ÊÍ·Å×ÊÔ´ £¬´Ó¶øµ¼ÖÂËùÓн»Á÷»úÉϵÄÊý¾ÝÁ÷¶¼ÓÀÊÀÛÕ±ÕµÄÒ»ÖÖÍøÂç״̬¡£

Õý³£ÇéÐÎÏ £¬µ±Ò»Ì¨½»Á÷»úµÄ¶Ë¿Ú·ºÆðÓµÈû²¢´¥·¢XOFFË®Ïßʱ £¬Êý¾Ý½øÈëµÄÆ«Ïò£¨¼´ÏÂÓÎ×°±¸£©½«·¢ËÍPAUSEÖ¡·´Ñ¹ £¬ÉÏÓÎ×°±¸ÎüÊÕµ½PAUSEÖ¡ºó×èÖ¹·¢ËÍÊý¾Ý £¬ÈôÊÇÆäÍâµØ¶Ë¿Ú»º´æÏûºÄÁè¼ÝãÐÖµ £¬Ôò¼ÌÐøÏòÉÏÓη´Ñ¹¡£ÔÆÔÆÒ»¼¶¼¶·´Ñ¹ £¬Ö±µ½ÍøÂçÖÕ¶Ë·þÎñÆ÷ÔÚPAUSEÖ¡ÖÐÖ¸¶¨Pause TimeÄÚÔÝÍ£·¢ËÍÊý¾Ý £¬´Ó¶øÏû³ýÍøÂç½ÚµãÒòÓµÈûÔì³ÉµÄ¶ª°ü¡£

µ«ÔÚÌØÊâÇéÐÎÏ £¬ÀýÈ籬·¢Á´Â·¹ÊÕÏ»ò×°±¸¹ÊÕÏʱ £¬BGP·ÓÉÖØÐÂÊÕÁ²Ê±´ú¿ÉÄ᷺ܻÆð¶ÌÔÝ»·Â· £¬»áµ¼Ö·ºÆðÒ»¸öÑ­»·µÄ»º³åÇøÒÀÀµ¡£ÈçÏÂͼËùʾ £¬µ±4̨½»Á÷»ú¶¼µÖ´ïXOFFË®Ïß £¬¶¼Í¬Ê±Ïò¶Ô¶Ë·¢ËÍPAUSEÖ¡ £¬Õâ¸öʱ¼ä¸ÃÍØÆËÖÐËùÓн»Á÷»ú¶¼´¦ÓÚÍ£Á÷״̬ £¬ÓÉÓÚPFCµÄ·´Ñ¹Ð§Ó¦ £¬Õû¸öÍøÂç»ò²¿·ÖÍøÂçµÄÍÌÍÂÁ¿½«±äΪÁã¡£
 

 

97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾

¡øPFCËÀËøÊ¾Òâͼ

 

×ÝÈ»ÔÚÎÞ»·ÍøÂçÖÐÐγɶÌÔÝ»·Â·Ê± £¬Ò²¿ÉÄܱ¬·¢ËÀËø¡£ËäÈ»¾­ÓÉÐÞ¸´¶ÌÔÝ»·Â·»áºÜ¿ìÏûÊÅ £¬µ«ËüÃÇÔì³ÉµÄËÀËø²»ÊÇÔÝʱµÄ £¬¼´±ãÖØÆô·þÎñÆ÷ÖÐÖ¹Á÷Á¿ £¬ËÀËøÒ²²»¿É×Ô¶¯»Ö¸´¡£

ΪÁËɨ³ýËÀËø×´Ì¬ £¬Ò»·½ÃæÊÇÒª¶Å¾øÊý¾ÝÖÐÐÄÀïµÄ»·Â·±¬·¢ £¬ÁíÒ»·½ÃæÔò¿ÉÒÔͨ¹ýÍøÂç×°±¸µÄËÀËø¼ì²â¹¦Ð§À´ÊµÏÖ¡£97¹ú¼ÊRG-S6510-48VS8CQÉϵÄDeadlock¼ì²â¹¦Ð§ £¬¿ÉÒÔ¼ì²âµ½·ºÆðDeadlock״̬ºóµÄÒ»¶Îʱ¼äÄÚ £¬ºöÂÔÊÕµ½µÄPFCÖ¡ £¬Í¬Ê±¶ÔbufferÖеı¨ÎÄÖ´ÐÐת·¢»òÑïÆúµÄ²Ù×÷£¨Ä¬ÈÏÊÇת·¢£©¡£

ÀýÈç £¬×¼Ê±Æ÷µÄ¼à¿Ø´ÎÊý¿ÉÉèÖÃÉèÖüì²â10´Î £¬Ã¿´Î10msÄÚ¼ì²âÊÇ·ñÊÕµ½PFC PauseÖ¡¡£Èô10´Î¾ùÊÕµ½Ôò˵Ã÷±¬·¢Deadlock £¬¶ÔbufferÖеı¨ÎÄÖ´ÐÐĬÈϲÙ×÷ £¬Ö®ºó½«ÉèÖÃ100ms×÷ΪRecoverʱ¼äºó»Ö¸´ÔÙ¼ì²â¡£ÏÂÁîÈçÏ£º

priority-flow-control deadlock cos-value 5 detect 10 recover 100  //10´Î¼ì²â £¬100ms recover¡£

RDMAÎÞËðÍøÂçÖÐʹÓÃPFCÁ÷¿Ø»úÖÆ £¬ÊµÏÖÁ˽»Á÷»ú¶Ë¿Ú»º´æÒç³öǰÔÝÍ£¶Ô¶ËÁ÷Á¿ £¬×èÖ¹Á˶ª°üÕ÷Ï󱬷¢ £¬µ«ÓÉÓÚÐèÒªÒ»¼¶Ò»¼¶·´Ñ¹ £¬Ð§ÂʽϵÍ £¬ÒÔÊÇÐèÒª¸ü¸ßЧµÄ¡¢¶Ëµ½¶ËµÄÁ÷¿ØÄÜÁ¦¡£

 

ʹÓÃECNʵÏֶ˵½¶ËµÄÓµÈû¿ØÖÆ

Ä¿½ñµÄRoCEÓµÈû¿ØÖÆÒÀÀµECN(Explicit Congestion Notification £¬ÏÔʽӵÈû֪ͨ)À´ÔËÐС£ECN×î³õÔÚRFC 3168Öнç˵ £¬ÍøÂç×°±¸»áÔÚ¼ì²âµ½ÓµÈûʱ £¬Í¨¹ýÔÚIPÍ·²¿Ç¶ÈëÒ»¸öÓµÈûָʾÆ÷ºÍÔÚTCPÍ·²¿Ç¶ÈëÒ»¸öÓµÈûÈ·ÈÏʵÏÖ¡£

RoCEv2±ê×¼½ç˵ÁËRoCEv2ÓµÈû¹ÜÀí(RCM)¡£ÆôÓÃÁËECNÖ®ºó £¬ÍøÂç×°±¸Ò»µ©¼ì²âµ½RoCEv2Á÷Á¿·ºÆðÁËÓµÈû £¬»áÔÚÊý¾Ý°üµÄIPÍ·²¿ECNÓò¾ÙÐбê¼Ç¡£

 

97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾

¡øIP±¨ÎÄÍ·ECN×ֶνṹ

 

Õâ¸öÓµÈûָʾÆ÷±»Ä¿µÄÖÕ¶Ë½ÚµãÆ¾Ö¤BTH(Base Transport Header £¬±£´æÓÚIBÊý¾Ý¶ÎÖÐ)ÖеÄFECNÓµÈûָʾ±êʶÀ´Ú¹ÊÍÒâÒå¡£»»¾ä»°Ëµ £¬µ±±»ECN±ê¼Ç¹ýµÄÊý¾Ý°üµÖ´ïËüÃÇÔ­±¾ÒªµÖ´ïµÄÄ¿µÄµØÊ± £¬ÓµÈû֪ͨ¾Í»á±»·´Ïì¸øÔ´½Úµã £¬Ô´½ÚµãÔÙͨ¹ý¶ÔÓÐÎÊÌâµÄQueue Pairs£¨QP£©¾ÙÐÐÍøÂçÊý¾Ý°üµÄËÙÂÊÏÞÖÆÍù·µÓ¦ÓµÈû֪ͨ¡£

 

ECN½»»¥Àú³Ì

 

97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾

¡øECN½»»¥Àú³ÌʾÒâͼ

 

• ·¢ËͶ˷¢Ë͵ÄIP±¨Îıê¼ÇÖ§³ÖECN£¨10£©£»

• ½»Á÷»úÔÚÐÐÁÐÓµÈûÇéÐÎÏÂÊÕµ½¸Ã±¨ÎÄ £¬½«ECN×Ö¶ÎÐÞ¸ÄΪ11²¢·¢³ö £¬ÍøÂçÖÐÆäËû½»Á÷»ú½«Í¸´«£»

• ÎüÊÕ¶ËÊÕµ½ECNΪ11µÄ±¨ÎÄ·¢Ã÷ÓµÈû £¬Õý³£´¦Öóͷ£¸Ã±¨ÎÄ£»

• ÎüÊն˱¬·¢ÓµÈûͨ¸æ £¬Ã¿ms¼¶·¢ËÍÒ»¸öCNP£¨Congestion Notification Packets£©±¨ÎÄ £¬ECN×Ö¶ÎΪ01 £¬ÒªÇó±¨ÎIJ»¿É±»ÍøÂçÑïÆú¡£ÎüÊն˶Զà¸ö±»ECN±ê¼ÇΪͳһ¸öQPµÄÊý¾Ý°ü·¢ËÍÒ»¸öµ¥¸öCNP¼´¿É£¨ÃûÌû®Òâ¼ûÏÂͼ£©£»

• ½»Á÷»úÊÕµ½CNP±¨ÎĺóÕý³£×ª·¢¸Ã±¨ÎÄ£»

• ·¢ËͶËÊÕµ½ECN±ê¼ÇΪ01µÄCNP±¨ÎÄÆÊÎöºó¶ÔÏìÓ¦µÄÁ÷£¨¶ÔÓ¦ÆôÓÃECNµÄQP£©Ó¦ÓÃËÙÂÊÏÞÖÆËã·¨¡£

RoCEv2µÄCNP°üÃûÌÃÈçÏ£º

 

97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾

¡øCNP±¨ÎĽṹ

 

ÖµµÃ×¢ÖØµÄÊÇ £¬CNP×÷ΪӵÈû¿ØÖƱ¨ÎÄ £¬Ò²»á±£´æÑӳٺͶª°ü £¬´Ó·¢ËͶ˵½ÎüÊն˾­ÓɵÄÃ¿Ò»Ìø×°±¸¡¢Ã¿Ò»ÌõÁ´Â·¶¼»áÓÐÒ»¶¨µÄÑÓ³Ù £¬»á×îÖÕ¼Ó´ó·¢ËͶËÎüÊÕµ½CNPµÄʱ¼ä £¬¶øÓë´Ëͬʱ½»Á÷»ú¶Ë¿ÚϵÄÓµÈûÒ²»áÖð²½Ôö¶à £¬Èô·¢ËͶ˲»¿Éʵʱ½µËÙ £¬ÈÔÈ»¿ÉÄÜÔì³É¶ª°ü¡£½¨ÒéÓµÈûͨ¸æÓòµÄ¹æÄ£²»Òª¹ý´ó £¬´Ó¶ø×èÖ¹ÓÉÓÚECN¿ØÖƱ¨ÎĽ»»¥»ØÂ·µÄÌøÊý¹ý¶à £¬¶øÓ°Ïì·¢ËͶËÎÞ·¨ÊµÊ±½µËÙ £¬Ôì³ÉÓµÈû¡£

 

 

×ܽá

RDMAÍøÂçÕýÊÇͨ¹ýÔÚÍøÂçÖа²ÅÅPFCºÍECN¹¦Ð§À´ÊµÏÖÎÞËð°ü¹Ü¡£PFCÊÖÒÕÈÃÎÒÃÇ¿ÉÒÔ¶ÔÁ´Â·ÉÏRDMAרÊôÐÐÁеÄÁ÷Á¿¾ÙÐпØÖÆ £¬²¢ÔÚ½»Á÷»úÈë¿Ú£¨Ingress port£©·ºÆðÓµÈûʱ¶ÔÉÏÓÎ×°±¸Á÷Á¿¾ÙÐз´Ñ¹¡£Ê¹ÓÃECNÊÖÒÕÎÒÃÇ¿ÉÒÔʵÏֶ˵½¶ËµÄÓµÈû¿ØÖÆ £¬ÔÚ½»Á÷»ú³ö¿Ú£¨Egress port£©ÓµÈûʱ £¬¶ÔÊý¾Ý°ü×öECN±ê¼Ç £¬²¢ÈÃÁ÷Á¿·¢ËͶ˽µµÍ·¢ËÍËÙÂÊ¡£

´Ó³ä·ÖÑéÕ¹ÍøÂç¸ßÐÔÄÜת·¢µÄ½Ç¶È £¬ÎÒÃÇÒ»Ñùƽ³£½¨Òéͨ¹ýµ÷½âECNºÍPFCµÄbufferË®Ïß £¬ÈÃECN¿ìÓÚPFC´¥·¢ £¬¼´ÍøÂçÕÕ¾ÉÒ»Á¬È«ËÙ¾ÙÐÐÊý¾Ýת·¢ £¬È÷þÎñÆ÷×Ô¶¯½µµÍ·¢°üËÙÂÊ¡£ÈôÊÇ»¹²»¿É½â¾öÎÊÌâ £¬ÔÙͨ¹ýPFCÈÃÉÏÓν»Á÷»úÔÝÍ£±¨ÎÄ·¢ËÍ £¬ËäÈ»ÕûÍøÍÌÍÂÐÔÄܽµµÍ £¬¿ÉÊDz»»á±¬·¢¶ª°ü¡£

ÔÚÊý¾ÝÖÐÐÄÍøÂçÖÐÓ¦ÓÃRDMA £¬²»µ«Òª½â¾öת·¢ÃæµÄÎÞËðÍøÂçÐèÇó £¬»¹Òª¹Ø×¢Ï¸Ä廯ÔËά £¬²Å»ªÓ¦¶ÔÑӳٺͶª°üÃô¸ÐµÄÍøÂçÇéÐΡ£ÓйØMMUµÄϸÄ廯¹ÜÀíÊÖÒÕÒÔ¼°»ùÓÚINTµÄÍøÂç¿ÉÊÓ»¯ÊÖÒտɲο¼ÍùÆÚÎÄÕ¡£

 

97¹ú¼Ê25G/100GÊý¾ÝÖÐÐĽâ¾ö¼Æ»®

¼´½«ÁÁÏà2018º¼ÖÝ · ÔÆÆÜ´ó»á £¬µÈÄãÀ´Áã¡

97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾

 

±¾ÆÚ×÷ÕߣºÕÔˬ

97¹ú¼ÊÍøÂ绥ÁªÍøÏµÍ³²¿ÐÐÒµ×Éѯ

97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾

 

ÍùÆÚ¾«²Ê»ØÊ×  

  • ¡¾µÚÒ»ÆÚ¡¿Ç³Ì¸ÎïÁªÍøÊÖÒÕ֮ͨѶЭÒéµÄ·×Õù
  • ¡¾µÚ¶þÆÚ¡¿ÔõÑùͨ¹ýÍøÂçÒ£²â£¨Network Telemetry£©ÊÖÒÕʵÏÖϸÄå»¯ÍøÂçÔËά£¿
  • ¡¾µÚÈýÆÚ¡¿·ºÂÛÊý¾ÝÖÐÐÄÍøÂçÔËά×Ô¶¯»¯
  • ¡¾µÚËÄÆÚ¡¿»ùÓÚRogue AP·´ÖƵÄÎÞÏßÇå¾²ÊÖÒÕ̽ÌÖ
  • ¡¾µÚÎåÆÚ¡¿Á÷Á¿¿ÉÊÓ»¯Ö®ERSPANµÄËÞÊÀ½ñÉú
  • ¡¾µÚÁùÆÚ¡¿ÔõÑùʵÏÖÊý¾ÝÖÐÐÄÍøÂç¼Ü¹¹“È¥”¶Ñµþ
  • ¡¾µÚÆßÆÚ¡¿ÔËά¿ÉÊÓ»¯Ö®INT¹¦Ð§Ïê½â
  • ¡¾µÚ°ËÆÚ¡¿Ç³ÎöRDMAÍøÂçÏÂMMUË®ÏßÉèÖÃ
  • ¡¾µÚ¾ÅÆÚ¡¿µÚÆß´úÎÞÏßÊÖÒÕ802.11axÏê½â
  • ¡¾µÚÊ®ÆÚ¡¿Êý¾ÝÖÐÐÄ×Ô¶¯»¯ÔËάÊÖÒÕ̽Ë÷Ö®½»Á÷»úÁãÉèÖÃÉÏÏß
  • ¡¾µÚʮһÆÚ¡¿ ÊÖÒÕÊ¢Ñç | dz̸Êý¾ÝÖÐÐÄ100G¹âÄ£¿é
  • ¡¾µÚÊ®¶þÆÚ¡¿Êý¾ÝÖÐÐÄÍøÂçµÈ¼Û¶à·¾¶£¨ECMP£©ÊÖÒÕÓ¦ÓÃÑо¿

 

Ïà¹ØÍÆ¼ö£º

¸ü¶àÊÖÒÕ²©ÎÄ

ÈκÎÐèÒª £¬ÇëÁªÏµ97¹ú¼Ê

97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾ 97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾
97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾

·µ»Ø¶¥²¿

ÊÕÆð
97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾
ÎĵµÆÀ¼Û
¸Ã×ÊÁÏÊÇ·ñ½â¾öÁËÄúµÄÎÊÌ⣿
Äú¶ÔÄ¿½ñÒ³ÃæµÄÖª×ã¶ÈÔõÑù£¿
²»Õ¦µÎ
ºÜÊǺÃ
ÄúÖª×ãµÄÔµ¹ÊÔ­ÓÉÊÇ£¨¶àÑ¡£©£¿
Äú²»Öª×ãµÄÔµ¹ÊÔ­ÓÉÊÇ£¨¶àÑ¡£©£¿
ÄúÊÇ·ñÉÐÓÐÆäËûÎÊÌâ»ò½¨Ò飿
ΪÁË¿ìËÙ½â¾ö²¢»Ø¸´ÄúµÄÎÊÌâ £¬Äú¿ÉÒÔÁôÏÂÁªÏµ·½·¨
ÓÊÏä
ÊÖ»úºÅ
ллÄúµÄ·´À¡£¡
97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾
97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾
97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾
ÇëÑ¡Ôñ·þÎñÏîÄ¿
¹Ø±Õ×Éѯҳ
ÊÛǰ×Éѯ ÊÛǰ×Éѯ
ÊÛǰ×Éѯ
ÊÛºó·þÎñ ÊÛºó·þÎñ
ÊÛºó·þÎñ
Òâ¼û·´Ïì Òâ¼û·´Ïì
Òâ¼û·´Ïì
¸ü¶àÁªÏµ·½·¨
ÍøÕ¾µØÍ¼