Use Microsoft Connected Cache to Accelerate OS Downloads
还没有人认领这个 Issue。
评估
- 难度
- 5/5
- 预计耗时
- 一周以上
- 新手友好度
- 18/100
- Issue 类型
- 功能
- 描述清晰度
- 基本清楚
- 活跃度
- 冷清
- 技术栈
- powershell
调研方向
The request needs a design decision before code: how the module would read DHCP option 235 on the client and rewrite Windows ESD and driver download URLs to a Connected Cache node, with an opt-in switch. The payload names no files or functions, so locate the existing download logic first. Done would mean an optional, documented setting that falls back to the Microsoft CDN when no cache host is set. Agree the approach with maintainers before writing code.
由索引模型根据 Issue 内容生成。
描述
Is your feature request related to a problem? Please describe.
With Microsoft rolling out standalone Connected Cache in preview, it would be helpful to have the ability to utilize network-local Connected Cache Nodes when downloading the Windows ESD image and drivers hosted by Windows Update. This would drastically reduce outbound network usage for large deployment loads (ex. only need to "download" Windows ESD once for 100+ device stagings).
Describe the solution you'd like
Before downloading content from Microsoft's CDN, check for DHCP option code 235 (DOCacheHost) on the client which, if configured for Connected Cache, will contain the local Connected Cache Node's FQDN or IP address (Source). If the value is set, rearrange the content download URL to use the connected cache endpoint:
http://[HostMachine-IP-address]/filestreamingservice/files/<file-hash>/<file-name>?cacheHostOrigin=<original-MS-download-server-FQDN> (Source)
If the file has not yet been cached by the Connected Cache Node, it will fetch the file from Microsoft's CDN, cache it on the node, and serve it to OSDCloud as if you had downloaded directly from the CDN. Future requests for that file would then be served directly from the Connected Cache Node.
Make use of this feature optional to allow administrators to choose not to use this solution (ex. option code 235 is in use elsewhere).
Describe alternatives you've considered
Running a cache solution that sits on the entire network is also an option, though this would present extra setup/maintenance burden to administrators and might not always be allowed in a corporate environment. For example, LANCache or a similar solution can serve this purpose but would require extra configuration, an extra server separate from any existing Connected Cache node, and redirection of all DNS on the network in order to function effectively.
Additional context
I work as an administrator for a medium/large Microsoft shop, and we are currently testing Connected Cache for use across our global footprint. Being able to cache Windows install files for OSDCloud would markedly reduce bandwidth load (especially in some global offices with less-than-stellar internet service) and improve download speeds.
- 主要语言
- PowerShell
- 星标
- 251
- 派生
- 102
- 平均合并
- 2 分钟
- 30 天内合并 PR
- 4
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
OSDeploy/OSD 的其他 Issue
-
难度 1/5 1 小时以内 新手友好度 68/100
-
难度 2/5 1-3 小时 新手友好度 78/100
-
难度 2/5 1-3 小时 新手友好度 70/100
-
难度 2/5 1-3 小时 新手友好度 62/100
-
难度 2/5 1-3 小时 新手友好度 63/100
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 68/100
cisagov/skeleton-docker#322 ·
-
area:study-data p2-high ready-for-agent type:chore
难度 2/5 1-3 小时 新手友好度 78/100
fderuiter/deruiter.dev#3706 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 62/100
nicobailon/pi-subagents#3242 ·
维护者通常 1 天内回复
-
bug chore
难度 2/5 1-3 小时 新手友好度 65/100
维护者通常 1 天内回复
-
ready-for-agent
难度 2/5 1-3 小时 新手友好度 78/100
hexlet-basics/hexlet-basics#962 ·
维护者通常 1 天内回复