97¹ú¼Ê

¡°¼«¼ò¡±»ÀР¡¤ È«ÓòÖÇÁª Ø­ 97¹ú¼Êм«¼òÁ캽ÏÂÒ»´úÐ£Ô°Íø½¨Éè×êÑлá
Ô¤Ô¼Ö±²¥
ÎÞ¸Ð×¼Èë ÈËÎïͳ¹Ü Ø­ RG-SAM+5.X ÐÂÒ»´ú¸ßУAIÈÏ֤ƽ̨Ðû²¼
Ô¤Ô¼Ö±²¥
97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾
²úÆ·
< ·µ»ØÖ÷²Ëµ¥
²úÆ·ÖÐÐÄ
²úÆ·
½â¾ö¼Æ»®
< ·µ»ØÖ÷²Ëµ¥
½â¾ö¼Æ»®ÖÐÐÄ
ÐÐÒµ
ºÏ×÷»ï°é
·µ»ØÖ÷²Ëµ¥
Ñ¡ÔñÇøÓò/ÓïÑÔ
97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾
97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾ 97¹ú¼Ê¡¤(ÖйúÇø)¼¯ÍŹٷ½ÍøÕ¾

ÔõÑùͨ¹ýÍøÂçÒ£²â£¨Network Telemetry£©ÊÖÒÕʵÏÖϸÄå»¯ÍøÂçÔËά£¿

¡¾ÍøÂçÔËά¡¿±¾ÎĽ«Í¨¹ýÏÈÈÝ»ùÓÚ½»Á÷»úÓ²¼þоƬµÄÍøÂçÒ£²â£¨Network Telemetry£©ÊÖÒռƻ®£¨INT+gRPC£©£¬ÊµÏÖÕûÍøµÄÁ÷Á¿¿ÉÊÓ»¯£¬ÎªÊµÏÖÕæÕýµÄ¿ÉÊÓ»¯ÔËάÌṩеÄ˼Ð÷¡£

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

    Ðû²¼Ê±¼ä£º2018-04-03

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

    µã»÷Á¿£º

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

    µãÔÞ£º

·ÖÏíÖÁ

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

ÎÒÏë̸ÂÛ

»ùÓÚAI¡¢´óÊý¾ÝµÄ»¥ÁªÍøÓ¦ÓÃÍÆ¶¯ÁË»¥ÁªÍøÊý¾ÝÖÐÐIJúÆ·¡¢ÊÖÒյĿìËÙÉý¼¶¡£

Ê×ÏÈ£¬½ÓÈë´ø¿í´Ó¹Å°åµÄ10GbpsÉý¼¶µ½25Gbps/100Gbps£¬ÐèÒª»ù´¡ÍøÂçÌṩ¸ßת·¢ÄÜÁ¦°ü¹ÜÓªÒµµÄ¸ß¿ÉÓá£

Æä´Î£¬»ùÓÚRDMA£¨Remote Direct Memory Access£¬Ô¶³ÌÖ±½ÓÄÚ´æ»á¼û£©ÎÞËðÒÔÌ«ÍøÊÖÒյįձéÓ¦Óã¬ÊµÏÖÁËÅÌËã½Úµãµ½´æ´¢½ÚµãµÄ΢Ãë¼¶ÑÓʱ£¬´ó´óÓÅ»¯¶Ëµ½¶ËµÄӪҵת·¢ÐÔÄÜ£¬¶øÕâÒ²Òâζ×ŶÔÍøÂçÔËάÌá³öÁ˸ü¸ßµÄÌôÕ½——ÔõÑùÔÚ´ó¹æÄ£¡¢ÖØ´óµÄHPC(High Performance Computing)ÍøÂçÖÐʵÏÖÔ½·¢Ï¸ÄåµÄÁ÷Á¿¿ÉÊÓ¡¢¿É¿Ø£¿ÔõÑùÃæÏòӪҵʵÏֶ˵½¶ËµÄÃë¼¶¹ÊÕ϶¨Î»£¬²¢ÎªÍøÂçµÄÒ»Á¬ÓÅ»¯Ìṩ¾«×¼µÄÊý¾ÝÖ§³Ö£¿

±¾ÎĽ«Í¨¹ýÏÈÈÝ»ùÓÚ½»Á÷»úÓ²¼þоƬµÄNetwork TelemetryÊÖÒռƻ®£¨INT+gRPC£©£¬ÊµÏÖÕûÍøµÄÁ÷Á¿¿ÉÊÓ»¯£¬ÎªÊµÏÖÕæÕýµÄ¿ÉÊÓ»¯ÔËάÌṩеÄ˼Ð÷¡£

 

ÍøÂçÔËάÐÂÌôÕ½

ΪÁËÈ·±£ÓªÒµµÄ¸ß¿É¿¿£¬»ùÓÚScale out·½·¨ÊµÏÖµÄÂþÑÜʽÅÌËãºÍ´æ´¢Ó¦Óã¨Hadoop/ Map reduce/HDFS£©»ñµÃÁË´ó¹æÄ£Ê¹Ó㬲»µ«ÕõÍÑÁ˵¥·þÎñÆ÷µÄÅÌËã¡¢´æ´¢ÐÔÄܵÄÏÞÖÆ£¬Í¬Ê±¿ÉÌṩ¸üÎÞаµÄÀ©Õ¹ÐÔ£¬Äܹ»¿ìËÙÏìÓ¦ÓªÒµÐèÇóת±ä£¬Ìá¸ßϵͳµÄ¿É¿¿ÐÔ¡¢¿ÉÓÃÐԺʹæÈ¡Ð§ÂÊ¡£

È»¶øÓªÒµ×Ô¼ºÔÚÍøÂçÖÐÂþÑÜÊDz»¿É¿ØµÄ£¬Òò´ËÔÚÏÖÊµÍøÂçÁ÷Á¿Ä£×ÓÖв»¿É×èÖ¹»á·ºÆð¶à¶ÔÒ»µÄͨѶģʽ£¬¼´ IncastÄ£×Ó¡£ÏÂͼ¼´µä·¶µÄIncastͨѶģ×Ó£º

 

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

¡ø TCP IncastͨѶģ×ÓʾÒâͼ

 

ÀýÈ磬µ±Ò»Ì¨Master½ÚµãÏòÒ»×éSlave½ÚµãÌᳫһ¸öÅÌËãʹÃüÇëÇóʱ£¬ËùÓÐSlave½ÚµãÏÕЩ»áͬʱ·µ»ØÅÌËãЧ¹ûÊý¾Ý£¬¹ØÓÚMaster½ÚµãÀ´Ëµ¾Í±¬·¢ÁËÒ»¸ö“΢ͻ·¢Á÷”¡£¹ØÓÚºÏÀíµÄ“΢ͻ·¢Á÷”£¬¿ÉÒÔÒÀÀµ½ÓÈë½»Á÷»ú×°±¸ÄÚ²¿µÄ±¨ÎÄ»º´æ»úÖÆ½â¾ö΢ͻ·¢¶ª°üÎÊÌâ¡£

ÏÖÔÚ£¬Ö÷Á÷½»Á÷оƬµÄƬÉÏ»º´æ½ÏÁ¿Ð¡£¬Ò»Ñùƽ³£ÒÔMbyteΪµ¥Î»¡£ÏÂͼÊǶÔÓ¦1G¡¢10GºÍ25G½»Á÷»ú³£ÓÃоƬµÄ»º´æÈÝÁ¿¡£

 

½Ó¿ÚËÙÂÊ

»º´æÈÝÁ¿

1000Mbps

4MB

10Gbps

16MB

25Gbps

32MB

¡ø ´ø¿íÌáÉýÓ뻺´æÌáÉý±ÈÕÕ˵Ã÷

 

´Ó±íÖв»ÄÑ¿´³ö£¬ÍøÂç½Ó¿ÚËÙÂÊ´Ó1GbpsÉú³¤µ½25Gbps£¬·þÎñÆ÷µÄÍÌÍÂÄÜÁ¦ÔöÌí25±¶£¬¶ø½»Á÷»úоƬµÄ»º´æÈÝÁ¿Í¬±È½öÔöÌí8±¶£¬Í¬Ê±¿ÉÓûº´æÊ±¼ä·´¶øÏ½µ65%£¨Æ¾Ö¤½»Á÷»úÈ«¶Ë¿Ú¹«ÕýʹÓûº´æÎªÀý£©¡£

Òò´Ë£¬25GÍøÂç¼Ü¹¹µÄTCP IncastÕ÷Ïó±È10GÍøÂçÔ½·¢ÏÔ×Å£¬Ë²Ê±µÄ¶à´òÒ»µ¼Ö³ö½Ó¿Ú±¨ÎÄÓµÈû£¬³ö½Ó¿Ú»º´æÓÃÍêºó»á»ùÓÚβ²¿ÑïÆú»úÖÆ¾ÙÐжª°ü£¬Ó¦Óüà²âµ½¶ª°üºóÌᳫTCPÖØ´«£¬Ôì³ÉÊý¾Ý¶Ëµ½¶ËÑÓʱµÄ½øÒ»²½¶ñ»¯£¬ÑÏÖØÓ°ÏìÓªÒµÌåÑé¡£

Õë¶ÔÍøÂ綪°üÒýÆðµÄÓªÒµ¹ÊÕÏ£¬ÐèÒªÍøÂç¼à¿ØÏµÍ³¿ìËÙ¶¨Î»ÍøÂçÖÐÄĄ̈½»Á÷»úµÄÄĸö¶Ë¿ÚÒò»º´æÈ±·¦µ¼ÖÂÁ˶ª°ü¡£Í¬Ê±£¬Ö÷ÒªÓªÒµ¶Ëµ½¶ËʱÑÓÁè¼ÝÔ¤ÆÚʱ£¬Ò²ÐèÒª¶¨Î»Á÷Á¿×ª·¢Â·¾¶ÉÏÿ¸ö½ÚµãµÄת·¢Ê±ÑÓ¡£

×ܽáÆðÀ´£¬ÐèÒªÍøÂç¼à¿ØÏµÍ³ÊµÏÖÈçÏÂÄÜÁ¦£º

¡ñ¿ìËÙ¶¨Î»ÄĄ̈½»Á÷»úµÄÄĸö¶Ë¿Ú±¬·¢¶ª°ü£»

¡ñʵʱ¼à¿ØÃ¿Ì¨½»Á÷»úµÄBufferʹÓÃÇéÐΣ»

¡ñ¶Ëµ½¶ËʱÑÓ¿ÉÒÔ¶¨Î»µ½Ïêϸװ±¸ºÍÁ´Â·¡£

 

ÔËά¿ÉÊÓ»¯ÊÖÒÕʵÏÖ

ÒÀ¸½¹Å°åµÄÍøÂç¼à¿ØÊÖ¶ÎÎÞ·¨½â¾ö“¿´²»¼û”µÄÎÊÌ⣬ÈçʱÑÓ¡¢×ª·¢Â·¾¶¡¢»º´æºÍ¶ª°ü¡£ÀýÈ磬ÓÉÍⲿӦÓÃÌᳫµÄÇëÇó»ñÈ¡ÍøÂç״̬ÐÅÏ¢µÄSNMPЭÒ飬¾ÍÎÞ·¨ÊµÊ±·´Ó¦ÍøÂçµÄ״̬¡£

ΪÏàʶ¾ö´ËÀàÄÑÌ⣬ҵ½çÆÕ±éÒýÈëNetwork Telemetry£¨ÍøÂçÒ£²â£©ÕâÒ»ÀíÄÏà±ÈÓÚSNMP£¬TelemetryʵÏÖÁËÍøÂç×°±¸×Ô¶¯ÍÆËÍ״̬ÐÅÏ¢µÄÄÜÁ¦£¬¾ßÓиüÇ¿µÄʱЧÐÔ¡£

ÊÂʵÉÏ£¬Telemetry²¢²»ÊÇз¢Ã÷£¬NetFlowºÍsFlowÔçÒÑʵÏÖÁËÍøÂçÁ÷Á¿µÄ²ÉÑùºÍÍÆËÍ£¬µ«NetFlow¡¢sFlowÍÆË͵ÄÊÇԭʼµÄÊý¾Ý²ÉÑùÐÅÏ¢£¬Êý¾ÝÒÔIP±¨ÎÄÃûÌ÷ºÆð¸øÆÊÎö¹¤¾ß£¬¶ø·ÇÓû§ÆÚÍûµÄ¹æ·¶»¯Êý¾ÝÄ£×Ó£¬ÔÙÓÅÒìµÄÆÊÎö¹¤¾ßÆäÀ©Õ¹ÐÔÄÜÒ²ÄÑÒԼ縺Õû¸öÊý¾ÝÖÐÐÄÍøÂçµÄ¼à¿ØÆÊÎö£¬Ö»ÄÜÔÚijһÆÊÎöʹÃüÖÐʩչ×÷Óá£

ÁíÒ»·½Ã棬Êý¾ÝÁ÷Á¿²¢·ÇÍøÂç״̬µÄËùÓУ¬ÍøÂç×°±¸µÄ CPU¡¢ÄÚ´æ¡¢ÍøÂçÓµÈûÐÅÏ¢¡¢ÍøÂçÊÂÎñµÄÈÕÖ¾ÐÅÏ¢µÈÒ²ÎÞ·¨Í¨¹ýNetFlow»òÕßsFlowʵʱת´ï³öÀ´¡£

 

gRPC£¨Google Remote Procedure Calls £¬¹È¸èÔ¶³ÌÀú³ÌŲÓã©ÊÇGoogle¹«Ë¾¿ªÔ´µÄÒ»¸ö¸ßÐÔÄÜ¡¢¿çÓïÑÔµÄRPC¿ò¼Ü£¬Ê¹ÓÃHTTP/2ЭÒ鲢ʹÓÃProto Buffer×÷ΪÐòÁл¯ºÍ·´ÐòÁл¯µÄ¹¤¾ß¡£Í¨¹ýÔÚ½»Á÷»úÖм¯³ÉgRPCÓ¦Ó㬽ç˵ÎÞаµÄÊý¾ÝÃûÌÃÒÔ¼°Êý¾ÝÍÆË͵ÄãÐÖµÀ´ÊµÏÖ½»Á÷»ú×ÔÉí״̬µÄ×Ô¶¯ÍÆËÍÄÜÁ¦£¬¿ÉÒÔʵÏÖÖÜÆÚÐÔÍÆËͽ»Á÷»úBuffer Usage¡¢CPU¡¢MemoryµÈÐÅÏ¢¸ø¼à¿Ø·þÎñÆ÷¡£µ±±¬·¢Bufferȱ·¦µ¼Ö¶ª°ü£¬Ò²»áʵʱ֪ͨ¸ø¼à¿Ø·þÎñÆ÷£¬ÊµÏÖÍøÂçÔËÐÐÊý¾ÝµÄ¿ÉÊÓ»¯¡£

 

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

¡ø gRPC½»»¥»úÖÆ

 

ÉÏͼչʾÁËÆäÖÐÒ»ÖÖgRPCµÄ½»»¥»úÖÆ£º

¡ñÔÚ½»Á÷»ú¿ªÆôgRPC¹¦Ð§ºó³äµ±gRPC ¿Í»§¶Ë½ÇÉ«£¬¼à¿Ø·þÎñÆ÷³äµ±gRPC·þÎñÆ÷½ÇÉ«£»

¡ñ½»Á÷»ú×Ô¶¯Ïò¼à¿Ø·þÎñÆ÷ÌᳫgRPCͨµÀ½¨Á¬£»

¡ñ½»Á÷»ú×Ô¶¯Éϱ¨Buffer Usage¡¢CPU¡¢ÄÚ´æµÈÐÅÏ¢¸ø¼à¿Ø·þÎñÆ÷£¬µ±Buffer±¬·¢¶ª°ü£¬½»Á÷»ú»áÒ²»áʵʱÉϱ¨¶ª°üÊÂÎñ¸ø¼à¿Ø·þÎñÆ÷¡£

gRPCµÄ·ºÆðºÜºÃµÄ½â¾öÁËʵʱÊý¾ÝÎÞ·¨ÓÐÓô«¸ø¼à¿Ø·þÎñÆ÷µÄÎÊÌâ¡£

INT£¨In-band Network Telemetry£©Ò²ÊÇÒ»ÖÖÐÂÐÍTelemetryЭÒ飬ÓÉBarefoot¡¢Arista¡¢Dell¡¢IntelºÍVMwareÅäºÏÌá³ö¡£INTµÄ·ºÆð½â¾öÁËת·¢Â·¾¶ºÍת·¢Ê±ÑÓ²»¿É¼ûµÄÎÊÌâ¡£

INTµÄÕûÌå´¦Öóͷ£Á÷³ÌÈçÏÂͼËùʾ£º

 

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

¡ø  ¿ÉÊÓ»¯ÍøÂç

 

¡ñ±¨ÎĵִïÊ׽ڵ㣬ͨ¹ýÔÚ½»Á÷»úÉÏÉèÖõIJÉÑù·½·¨Æ¥Åä²¢¾µÏñ³ö¸Ã±¨ÎÄ£¬²¢ÔÚËIJãÍ·²¿ºó²åÈëINTÍ·£¬½«±¨ÎÄÈë¶Ë¿ÚPort ID¡¢³ö¶Ë¿Ú Port ID¡¢Èë¶Ë¿Úʱ¼ä¡¢³ö¶Ë¿Úʱ¼ä¡¢ÒÔ¼°×°±¸µÄDEVICE ID·â×°³ÉMetaData£¬½«MD²åÈëµ½INTÍ·²¿Ö®ºó£»

¡ñ±¨ÎÄת·¢µ½ÖÐÐĽڵ㣬װ±¸Æ¥Åäµ½INTÍ·²¿ºó£¬ÔÚINTÍ·²¿ºóÔÙ²åÈëÒ»²ãMD£»

¡ñ±¨ÎÄת·¢µ½×îºóÒ»Ìø£¬×°±¸Æ¥ÅäINTÍ·²¿ºó£¬ÔÙ²åÈëÒ»²ãMD£¬²¢ÔÚ±¨ÎÄÍⲿ·â×°Ò»¸öIPÍ·£¨ERSPAN£©£¬Íâ²ãIPΪ¼à¿Ø·þÎñÆ÷µØÖ·£¬ÕâÑùINT±¨Îıãת·¢µ½¼à¿Ø·þÎñÆ÷¡£

×ܽ᣺ÕëÆËÃæÏòHPCÓªÒµµÄÏÂÒ»´úÊý¾ÝÖÐÐÄÍøÂ磬»ùÓÚINTºÍgRPCµÄNetwork TelemetryÊÖÒÕ¿ÉÒÔʵÏÖÓªÒµ¶Ëµ½¶ËµÄÍøÂçÁ÷Á¿¿ÉÊÓ»¯£¬Í»ÆÆ“ÍøÂçºÚºÐ”£¬ÎªÏ¸Äå»¯ÍøÂçÔËάÌṩÕûÌåµÄ½â¾ö¼Æ»®ºÍÐëÒªµÄÊÖÒÕÖ§³Ö¡£

97¹ú¼ÊÍøÂçÐÂÒ»´ú25G/100GÍøÂç½»Á÷»ú²úÆ·¾ùÒÑʵÏÖNetwork TelemetryÄÜÁ¦£¨gRPCºÍINT£©£¬ÈôÊÇÄú¶ÔÍøÂçÒ£²â¸ÐÐËȤ£¬»¶Ó­ÁôÑÔ½»Á÷¡£

 

±¾ÎÄ×÷Õߣº³Â¶¬ÁÖ

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

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

 

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

¡¾µÚÒ»ÆÚ¡¿Ç³Ì¸ÎïÁªÍøÊÖÒÕ֮ͨѶЭÒéµÄ·×Õù

 

Ïà¹ØÍÆ¼ö£º

• ÏàʶgRPCÊÖÒÕ£¬Õâһƪ¾Í¹»ÁË

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

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

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

·µ»Ø¶¥²¿

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