Comments (3)
Copying over winrm is still slow... a directory of 8 files totalling about 1MB in size takes 25 seconds to copy whereas the same copy using ssh takes 2 seconds.
from pywinrm.
This is unfortunately a limitation with the transport protocol that WinRM runs under called WSMV. Each message sent to the server has a max size of 8KB which produces a lot of overhead. Unfortunately there isn't too much that can be done in the current state of pywinrm as it uses WSMV exclusively. I am looking into the background to see how we can implement PSRP as that is meant to get over some of the limits with WSMV (I don't know how as it is over the same protocol) but it is really early days.
from pywinrm.
I assume you mean using Ansible, since winrm itself has no native file transfer capability at all (we had to roll our own). The actual throughout is already pretty close to the theoretical maximum over WinRM- since Ansible 2.0, we've abandoned the 8k multi-invocation mess and are doing ~150k request streams on a single command invocation (PSRP actually increases the overhead- I've yet to come up with an Ansible scenario that isn't worse under PSRP). You mentioned you're copying a directory of files- for a total data size of 1MB, it's likely that the per-file module overhead and round-trippage significantly dwarfs the actual file transfer data. You'd probably do a lot better to zip the contents of the directory and push it over that way. Ansible 2.3 significantly reduces that overhead via module pipelining, but it'll still dwarf your data since we resend the stat module for each file. It's possible that we could cache that to improve perf for recursive transfers, but it's unlikely to happen until at least 2.4... Closing this issue, since there's nothing to be done in this project for it.
from pywinrm.
Related Issues (20)
- Fix LIB env var conflicts HOT 2
- Target powershell version should be steerable HOT 1
- pywinrm does not seem to support access to ipv6 addresses? HOT 1
- Issue from Windows 10 in French HOT 3
- Winrs works while pywinrm fails HOT 2
- Recommended kerberos dependecy HOT 1
- Move `requests_ntlm` to optional dependencies HOT 1
- status_code returns 1 when status of PS command is 1 or greater HOT 1
- User in Remote desktop users Group can not run command with pywinrm? HOT 2
- TLS 1.3 + IISCrypto Best practices = failure to connect HOT 5
- Resources keeps increasing
- Enable NTLM v2 HOT 1
- exec a .bat Why the is no-response? urgency!!! HOT 1
- hostname_override=self.kerberos_hostname_override not avail in credssp auth_method
- CMD Command return partial output
- pywinrm don't work redhat 8.7 HOT 1
- Compatibility with python 3.11x HOT 1
- pywinrm not support powershell7 or it is not possible to set the powershell version HOT 3
- pywinrm can't create powershell connection using ConfigurationName HOT 1
- Cannot connect to Windows Server 2022 when urllib3 version is 2.1.0 HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pywinrm.